/programs/system/board/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/board/trunk/board.asm |
---|
25,7 → 25,7 |
dd i_end+0x2000 ; memory for app (4 Kb) |
dd i_end+0x2000 ; esp |
dd 0x0 , 0x0 ; I_Param , I_Icon |
include 'MACROS.INC' |
include '..\..\..\MACROS.INC' |
include 'debug.inc' |
purge newline |
MAXSTRINGS = 16 |
293,7 → 293,7 |
mov ecx,MAXSTRINGS*10+45 ; [y start] *65536 + [y size] |
mov edx,[sc.work] ; color of work area RRGGBB,8->color gl |
or edx,0x13000000 |
mov edi,header ; WINDOW LABEL |
mov edi,title ; WINDOW LABEL |
mcall |
mov ecx,4 |
516,11 → 516,11 |
; 11,11 > 0,-1 |
; 5,11 > 0,-1 |
if lang eq ru |
header db '®áª ®â« ¤ª¨ ¨ á®®¡é¥¨©',0 |
title db '®áª ®â« ¤ª¨ ¨ á®®¡é¥¨©',0 |
else if lang eq en |
header db 'General debug & message board',0 |
title db 'General debug & message board',0 |
else |
header db 'Allgemeines debug- & nachrichtenboard',0 |
title db 'Allgemeines debug- & nachrichtenboard',0 |
end if |
krnl_cnt dd 0 |
vmode dd 0 |
/programs/system/calendar/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/calendar/trunk/calendar.asm |
---|
64,10 → 64,10 |
dd 0x0 ; ¤à¥á ¡ãä¥à ¤«ï áâப¨ ¯ à ¬¥â஢ (¥ ¨á¯®«ì§ã¥âáï) |
dd 0x0 ; § १¥à¢¨à®¢ ® |
include 'lang.inc' |
include 'macros.inc' ; 㬥ìè ¥â à §¬¥à ¯à®£à ¬¬ë |
;include 'debug.inc' |
include '..\..\..\macros.inc' ; 㬥ìè ¥â à §¬¥à ¯à®£à ¬¬ë |
macro ShowFocus field,reg |
{ |
local .nofocus, .exit |
107,7 → 107,7 |
db 9 |
db 'Januar ' |
db 'Februar ' |
db 'MÁrz ' |
db 'M+rz ' |
db 'April ' |
db 'Mai ' |
db 'Juni ' |
138,8 → 138,8 |
db 'Maaliskuu' |
db 'Huhtikuu ' |
db 'Toukokuu ' |
db 'KesÁkuu ' |
db 'HeinÁkuu ' |
db 'Kes+kuu ' |
db 'Hein+kuu ' |
db 'Elokuu ' |
db 'Syyskuu ' |
db 'Lokakuu ' |
414,10 → 414,9 |
cmp ah,80 |
je reset |
;jmp still |
cmp ah,81 |
je set_date |
cmp ah,2 ; drop down list |
jne no_dropdn |
.drop: |
607,6 → 606,36 |
jmp still |
set_date: |
mov eax,0x00000000 |
mov ebx,[day_sel] |
call additem |
shl eax,8 |
mov ebx,[Month] |
add ebx,1 |
call additem |
shl eax,8 |
mov ebx,[Year] |
call additem |
mov ecx,eax |
mov eax,22 |
mov ebx,1 |
mcall |
jmp still |
additem: |
add eax,1 |
daa |
sub ebx,1 |
cmp ebx,0 |
jne additem |
ret |
; ********************************************* |
; ******* ******* |
; ********************************************* |
625,12 → 654,10 |
shr ecx,8 |
add edx,20*65536 |
;mov eax,47 |
mcall |
shr ecx,8 |
add edx,20*65536 |
;mov eax,47 |
mcall |
ret |
649,7 → 676,7 |
mov ecx,WIN_Y-15 |
end if |
mov edx,0x13aabbcc ; 梥â à ¡®ç¥© ®¡« á⨠RRGGBB,8->color gl |
mov edi,header ; § £®«®¢®ª |
mov edi,title ; § £®«®¢®ª |
mcall |
call draw_week |
660,56 → 687,37 |
mov edx,72 |
mcall |
;mov eax,8 |
mov ebx,212*65536+7 |
;mov ecx,290*65536+10 |
;mov esi,0x005555dd |
inc edx |
mcall |
;mov eax,8 |
mov ebx,205*65536+7 |
mov ecx,300*65536+10 |
;mov esi,0x005555dd |
inc edx |
mcall |
;mov eax,8 |
mov ebx,212*65536+7 |
;mov ecx,300*65536+10 |
;mov esi,0x005555dd |
inc edx |
mcall |
;mov eax,8 |
mov ebx,224*65536+7 |
mov ecx,290*65536+10 |
;mov esi,0x005555dd |
inc edx |
mcall |
;mov eax,8 |
mov ebx,231*65536+7 |
;mov ecx,290*65536+10 |
;mov esi,0x005555dd |
inc edx |
mcall |
;mov eax,8 |
mov ebx,224*65536+7 |
mov ecx,300*65536+10 |
;mov esi,0x005555dd |
inc edx |
mcall |
;mov eax,8 |
mov ebx,231*65536+7 |
;mov ecx,300*65536+10 |
;mov esi,0x005555dd |
inc edx |
mcall |
;mov eax,8 |
mov ebx,243*65536+14 |
mov ecx,290*65536+20 |
mov esi,0x00dd7777 |
716,7 → 724,12 |
inc edx |
mcall |
mov eax,8 |
mov ebx,10*65536+100 |
mov ecx,290*65536+20 |
mov esi,0x00d5d5d5 |
inc edx |
mcall |
mov esi,0x05080d0 |
if SKIP eq 0 |
mov ebx,B_DATE_X |
756,20 → 769,21 |
mov edx,sys_text |
mcall |
;mov eax,4 |
mov ebx,149*65536+302 |
;mov ecx,0x800000ff |
mov edx,minus |
mcall |
;mov eax,4 |
mov ebx,137*65536+292 |
mov ecx,0x80ff0000 |
mov edx,plus |
mcall |
mov ebx,15*65536+298 |
mov ecx,0x00000000 |
mov esi,15 |
mov edx,setd |
mcall |
;mov eax,4 |
mov ecx,0x10ddeeff ; èà¨äâ 1 ¨ 梥â ( 0xF0RRGGBB ) |
if SKIP eq 0 |
1040,7 → 1054,7 |
day_count db 3,0,3,2,3,2,3,3,2,3,2,3 |
Fkeys db 210,211,212,213,214,215,216,217,208,209,228,159 |
header: ; áâப § £®«®¢ª |
title: ; áâப § £®«®¢ª |
if lang eq ru |
db ' ',0 |
else if lang eq ge |
1102,10 → 1116,10 |
new_style dd 1 |
dropped db 0 |
co_text: db '¢à¥¬ï á¥áᨨ',0 |
sys_text: db 'á¨á⥬®¥ ¢à¥¬ï',0 |
plus: db '¤®¡ ¢¨âì(+)',0 |
minus: db 'ã¡à âì(-)',0 |
setd: db 'áâ ®¢¨âì ¤ âã',0 |
I_END: ; ª®¥æ ¯à®£à ¬¬ë |
firstday dd ? |
/programs/system/cpu/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/cpu/trunk/cpu.asm |
---|
18,7 → 18,7 |
dd 0x0 , 0x0 ; I_Param , I_Icon |
include 'lang.inc' |
include 'macros.inc' |
include '..\..\..\macros.inc' |
display_processes=32 ; number of processes to show |
START: ; start of execution |
; calculate window position |
311,9 → 311,9 |
int 0x40 |
;show window xy size |
mov ecx,[process_info_buffer.x_size] |
mov ecx,[process_info_buffer.box.left] |
shl ecx,16 |
add ecx,[process_info_buffer.y_size] |
add ecx,[process_info_buffer.box.top] |
add edx,60*65536 |
int 0x40 |
480,7 → 480,7 |
mov ebx,[winxpos] ; [x start] *65536 + [x size] |
mov ecx,[winypos] ; [y start] *65536 + [y size] |
mov edx,0x13ddffdd ;ffffff ; color of work area RRGGBB,8->color |
mov edi,header ; WINDOW CAPTION; |
mov edi,title ; WINDOW CAPTION; |
int 0x40 |
594,7 → 594,7 |
tbts_3 db 'START' |
tbte_2: |
header db 'Prozesse - Ctrl/Alt/Del',0 |
title db 'Prozesse - Ctrl/Alt/Del',0 |
else if lang eq et |
text: |
608,7 → 608,7 |
tbts_3 db 'START' |
tbte_2: |
header db 'Protsessid - Ctrl/Alt/Del',0 |
title db 'Protsessid - Ctrl/Alt/Del',0 |
else |
text: |
622,7 → 622,7 |
tbts_3 db 'RUN' |
tbte_2: |
header db 'Processes - Ctrl/Alt/Del',0 |
title db 'Processes - Ctrl/Alt/Del',0 |
end if |
/programs/system/cpuid/trunk/MOS_UZEL.INC |
---|
File deleted |
\ No newline at end of file |
/programs/system/cpuid/trunk/CPUID.ASM |
---|
28,22 → 28,15 |
dd 0x0 |
dd 0x0 |
macro udata |
{ |
} |
include '..\..\..\macros.inc' ; useful macroses |
include 'draw.inc' |
include 'brand.inc' ;Brand ID decoding |
include 'caches.inc' ;(L1 and L2 cashes decoding for Intel) |
include 'multipli.inc' ;(multiplier decoding) |
include 'features.inc' ;(features decoding) |
include 'mos_uzel.inc' |
; useful macroses and Brand ID decoding |
include 'caches.inc' |
;(L1 and L2 cashes decoding for Intel) |
include 'multipli.inc' |
;(multiplier decoding) |
include 'features.inc' |
;(features decoding) |
include 'gif2img.inc' ;macros to convert gif to img |
include 'gif2img.inc' |
; include macros to convert gif to img |
include 'rsatest.inc' |
include 'variable.inc' |
55,7 → 48,7 |
; CPU speed |
mov eax, 18 |
mov ebx,5 |
int 0x40 |
mcall |
mov [total1],eax ;in Hz, example 1600490000 |
xor edx,edx |
mov ebx,1000000 |
464,7 → 457,7 |
mov esi, amd |
call load_gif |
PutImage 125,107,201,49,img_area+8 |
PutImage 135,97,201,49,img_area+8 |
; place size |
; Relax, man. AMD made PRETTY SIMPLE cache detection routine |
1065,7 → 1058,7 |
; mov ecx,dword 0x00000000 |
; mov edx,PF0c |
; mov esi,PF0clen-PF0c |
; int 0x40 |
; mcall |
;jmp MMXtest |
;.ppF1: |
Text 110,70,0x00000000,PF0, PF0len-PF0 |
1580,7 → 1573,7 |
mov eax, 18 |
mov ebx, 16 |
int 0x40 |
mcall |
shr eax, 10 |
1588,7 → 1581,7 |
mov eax, 18 |
mov ebx, 17 |
int 0x40 |
mcall |
shr eax, 10 |
1603,12 → 1596,10 |
;============================== |
mov ebx,50 ; æäåìñ 1 ñåê |
mov eax,23 ; ôóíêöèÿ 23: îæèäàíèå ñîáûòèÿ |
int 0x40 |
mov ebx,50 ; æäåìñ 0.5 ñåê |
mcall |
; mov eax,10 |
; int 0x40 ; |
cmp eax,1 ; |
je red ; redraw |
cmp eax,2 ; |
1618,11 → 1609,11 |
jmp still ; |
key: ; |
mov eax,2 ; |
int 0x40 ; |
mcall ; |
jmp still ; |
button: ; |
mov eax,17 ; |
int 0x40 ; |
mcall ; |
cmp ah,1 ; = 1 ? |
je close ; close |
1681,7 → 1672,7 |
close: |
mov eax,-1 |
int 0x40 |
mcall |
;**************************** THREAD-SECOND WINDOW |
thread_start: |
1700,12 → 1691,12 |
;length of module - 256 bit |
mov eax,26 |
mov ebx,9 |
int 0x40 |
mcall |
add eax,100 ;test lasts 1 second. |
push eax |
.loop: |
mov ecx,4 ;do 4 iterations |
push ecx ;this reduces number of calls int 0x40. |
push ecx ;this reduces number of calls mcall. |
.loop1: |
call rsa_test ;this procedure change all registers |
dec dword [esp] |
1713,7 → 1704,7 |
pop ecx |
mov eax,26 |
mov ebx,9 |
int 0x40 |
mcall |
cmp eax,dword [esp] ;Is time changed? |
jl .loop |
pop eax |
1733,7 → 1724,7 |
still_2: |
mov eax,10 |
int 0x40 |
mcall |
cmp eax,1 |
je window_2 ; window_2 |
1746,12 → 1737,12 |
key_2: ; |
mov eax,2 ; 2 |
int 0x40 ; |
mcall ; |
jmp still_2 ; |
button_2: ; |
mov eax,17 ; 17 |
int 0x40 ; |
mcall ; |
cmp ah,1 ; = 1 ? |
jne noclose_2 ; noclose |
1759,7 → 1750,7 |
mov [num_win2],0 ; |
or eax,-1 ; |
int 0x40 |
mcall |
noclose_2: |
1768,7 → 1759,7 |
draw_window_2: |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,1h ; 1, start of draw |
int 0x40 |
mcall |
Window 250,250,420,390, 0x33FFFFFF, 0x805080d0, standard |
1874,7 → 1865,7 |
mov eax,12 |
mov ebx,2h |
int 0x40 |
mcall |
ret |
1885,9 → 1876,9 |
draw_window: |
mov eax,12 |
mov ebx,1h |
int 0x40 |
mcall |
Window 150,150,350,385, 0x33FFFFFF, 0x805080d0, header |
Window 150,150,350,385, 0x33FFFFFF, 0x805080d0, title |
; place size |
Button 15,330,92,23,2,0x03FFFFFF ; button "press for more" |
1901,7 → 1892,7 |
mov eax,12 |
mov ebx,2h |
int 0x40 |
mcall |
Text 130,270,0x00000000,instruct, instructlen-instruct |
1987,7 → 1978,7 |
; DATA AREA |
header db 'CPUID 2.19 by S.Kuzmin & the KolibriOS team',0 |
title db 'CPUID 2.2 by S.Kuzmin & the KolibriOS team',0 |
tsum: |
db 'Frequency: . MHz' |
2512,7 → 2503,7 |
mynamelen: |
align 4 |
udata |
thread2_stack_area rb 64 |
thread2_esp = $ |
U_END: |
/programs/system/cpuid/trunk/amd.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/programs/system/cpuid/trunk/brand.inc |
---|
0,0 → 1,278 |
;////////////////////////////////////////////// |
;Decoding Brand ID for Intel |
decodebrand: |
cmp dword[smallvendor], 'cAMD' |
jz amd_br |
cmp dword[smallvendor], 'ntel' |
jz intel_br |
jmp Bi00 ; if not AMD or Intel |
amd_br: ;;;;;;;;;;;;;;;;;;;;; amd brand |
xor eax,eax |
inc eax |
cpuid |
cnnn0: |
cmp bl, 00h |
ja rr |
je cnnn1 |
rr: |
mov byte [brand], bl ; |
Text 60,250,0x00000000,abrand00, abrand00len-abrand00 |
jmp B000 |
;jmp comppp |
cnnn1: |
mov eax, 0x80000001 ; CPUID ext. function 0x80000001 |
cpuid |
cmp ebx, 0 |
je Bi00 |
mov word [brand], bx ; |
comppp: |
cmp [brand], 400h |
jl res1 |
cmp [brand], 500h |
jl res2 |
jae res3 |
res1: |
Text 60,250,0x00000000,abrand0, abrand0len-abrand0 |
jmp B000 |
res2: |
Text 60,250,0x00000000,abrand1, abrand1len-abrand1 |
jmp B000 |
res3: |
Text 60,250,0x00000000,abrand2, abrand2len-abrand2 |
jmp B000 |
;;;;;;;;;;;;;;;;;;;;; intel brand |
intel_br: |
xor eax,eax |
inc eax |
cpuid |
cmp0: |
cmp bl, 00h |
je Bi00 |
cmp1: |
cmp bl, 01h |
je Bi01 |
cmp2: |
cmp bl, 02h |
je Bi02 |
cmp3: |
cmp bl, 03h |
je Bi03 |
cmp4: |
cmp bl, 04h |
je Bi04 |
cmp6: |
cmp bl, 06h |
je Bi06 |
cmp7: |
cmp bl, 07h |
je Bi07 |
cmp8: |
cmp bl, 08h |
je Bi08 |
cmp9: |
cmp bl, 09h |
je Bi09 |
cmpA: |
cmp bl, 0Ah |
je Bi0A |
cmpB: |
cmp bl, 0Bh |
je Bi0B |
cmpC: |
cmp bl, 0Ch |
je Bi0C |
cmpE: |
cmp bl, 0Eh |
je Bi0E |
cmpF: |
cmp bl, 0Fh |
je Bi0F |
cmp11: |
cmp bl, 11h |
je Bi11 |
cmp12: |
cmp bl, 12h |
je Bi12 |
cmp13: |
cmp bl, 13h |
je Bi13 |
cmp14: |
cmp bl, 14h |
je Bi14 |
cmp15: |
cmp bl, 15h |
je Bi15 |
cmp16: |
cmp bl, 16h |
je Bi16 |
cmp17: |
cmp bl, 17h |
je Bi17 |
jne Bi00 |
;------------------ |
Bi00: |
mov byte [brand], bl ;00h |
Text 60,250,0x00000000,brand0, brand0len-brand0 |
;Number 270,180,1*256,2,dword [brand],0x000000 was in v. 1.11 |
jmp B000 |
Bi01: |
mov [brand], 01h |
Text 60,250,0x00000000,brand01, brand01len-brand01 |
jmp B000 |
Bi02: |
mov [brand], 02h |
Text 60,250,0x00000000,brand02, brand02len-brand02 |
jmp B000 |
Bi03: |
mov [brand], 03h |
cmp [m], 8 |
je E3 |
Text 60,250,0x00000000,brand03, brand03len-brand03 |
jmp B000 |
E3: |
Text 60,250,0x00000000,brand03d, brand03dlen-brand03d |
jmp B000 |
Bi04: |
mov [brand], 04h |
Text 60,250,0x00000000,brand04, brand04len-brand04 |
jmp B000 |
Bi06: |
mov [brand], 06h |
Text 60,250,0x00000000,brand06, brand06len-brand06 |
jmp B000 |
Bi07: |
mov [brand], 07h |
Text 60,250,0x00000000,brand07, brand07len-brand07 |
jmp B000 |
Bi08: |
mov [brand], 08h |
Text 60,250,0x00000000,brand08, brand08len-brand08 |
jmp B000 |
Bi09: |
mov [brand], 09h |
Text 60,250,0x00000000,brand09, brand09len-brand09 |
jmp B000 |
Bi0A: |
mov [brand], 0Ah |
Text 60,250,0x00000000,brand0A, brand0Alen-brand0A |
jmp B000 |
Bi0B: |
mov [brand], 0Bh |
cmp [m], 13 |
jl Eb |
Text 60,250,0x00000000,brand0B, brand0Blen-brand0B |
jmp B000 |
Eb: |
Text 60,250,0x00000000,brand0Bd, brand0Bdlen-brand0Bd |
jmp B000 |
Bi0C: |
mov [brand], 0Ch |
Text 60,250,0x00000000,brand0C, brand0Clen-brand0C |
jmp B000 |
Bi0E: |
mov [brand], 0Eh |
cmp [m], 13 |
jl Ed |
Text 60,250,0x00000000,brand0E, brand0Elen-brand0E |
jmp B000 |
Ed: |
Text 60,250,0x00000000,brand0Ed, brand0Edlen-brand0Ed |
jmp B000 |
Bi0F: |
mov [brand], 0Fh |
Text 60,250,0x00000000,brand0F, brand0Flen-brand0F |
jmp B000 |
Bi11: |
mov [brand], 11h |
Text 60,250,0x00000000,brand11, brand11len-brand11 |
jmp B000 |
Bi12: |
mov [brand], 12h |
Text 60,250,0x00000000,brand12, brand12len-brand12 |
jmp B000 |
Bi13: |
mov [brand], 13h |
Text 60,250,0x00000000,brand13, brand13len-brand13 |
jmp B000 |
Bi14: |
mov [brand], 14h |
Text 60,250,0x00000000,brand14, brand14len-brand14 |
jmp B000 |
Bi15: |
mov [brand], 15h |
Text 60,250,0x00000000,brand15, brand15len-brand15 |
jmp B000 |
Bi16: |
mov [brand], 16h |
Text 60,250,0x00000000,brand16, brand16len-brand16 |
jmp B000 |
Bi17: |
mov [brand], 17h |
Text 60,250,0x00000000,brand17, brand17len-brand17 |
jmp B000 |
B000: |
ret |
/programs/system/cpuid/trunk/cyrix.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/programs/system/cpuid/trunk/draw.inc |
---|
0,0 → 1,96 |
; Interface |
macro Window xStart,yStart,xSize,ySize,bColor,gColor,fColor |
{ |
mov ebx,xStart |
shl ebx,16 |
add ebx,xSize |
mov ecx,yStart |
shl ecx,16 |
add ecx,ySize |
mov edx,bColor |
mov esi,gColor |
mov edi,fColor |
xor eax,eax |
mcall |
} |
;WriteTextToWindow |
macro Text xStart,yStart,rgbColor,pText,nTextLen |
{ |
mov ebx,xStart |
shl ebx,16 |
add ebx,yStart |
mov ecx,rgbColor |
mov edx,pText |
mov esi,nTextLen |
mov eax,4 |
mcall |
} |
;DisplayNumber |
macro Number xStart,yStart,nPrintType,noOfDigits,Data,rgbColor |
{ |
mov edx,xStart |
shl edx,16 |
add edx,yStart |
mov ebx,noOfDigits |
shl ebx,16 |
or ebx,nPrintType |
mov ecx,Data |
mov esi,rgbColor |
mov eax,47 |
mcall |
} |
macro DrawLine xStart,xEnd,yStart,yEnd,rgbColor |
{ |
mov ebx,xStart |
shl ebx,16 |
add ebx,xEnd |
mov ecx,yStart |
shl ecx,16 |
add ecx, yEnd |
mov edx,rgbColor |
mov eax,38 |
mcall |
} |
macro PutImage xPos,yPos,xImage,yImage,pImage |
{ |
mov ecx,xImage |
shl ecx,16 |
add ecx, yImage |
mov edx,xPos |
shl edx,16 |
add edx,yPos |
mov ebx,pImage |
mov eax,7 |
mcall |
} |
macro Button xStart,yStart,xSize,ySize,nID,rgbColor |
{ |
mov ebx,xStart |
shl ebx,16 |
add ebx,xSize |
mov ecx,yStart |
shl ecx,16 |
add ecx,ySize |
mov edx,nID |
mov esi,rgbColor |
mov eax,8 |
mcall |
} |
macro CreateTread EntryPoint,StackPos |
{ |
xor ebx,ebx |
inc ebx |
mov ecx,EntryPoint |
mov edx,StackPos |
mov eax,51 |
mcall |
} |
/programs/system/cpuid/trunk/idt.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/programs/system/cpuid/trunk/multipli.inc |
---|
130,7 → 130,7 |
mov eax, 68 ; AMD-K6 (p.30) |
mov ebx, 3 |
mov edx, 0x0C0000087 |
int 0x40 ; eax - low dword |
mcall ; eax - low dword |
and eax, 111b |
mov cl, [athloncoef3 + eax] |
cmp eax, 6 |
152,7 → 152,7 |
@@: mov eax, 68 ; Athlon/AthlonXP |
mov ebx, 3 |
mov edx, 0x0C0010015 |
int 0x40 |
mcall |
mov ebx, eax |
shr ebx, 24 |
and ebx, 0x0F |
165,7 → 165,7 |
AMDK7M: mov eax, 68 ; AthonXP-M |
mov ebx, 3 |
mov edx, 0xC0010042 |
int 0x40 |
mcall |
and eax, 0x1F |
mov cl, [athlonmcoef + eax] |
ret |
180,7 → 180,7 |
mov eax, 68 ; Athon64 |
mov ebx, 3 |
mov edx, 0xC0010015 |
int 0x40 |
mcall |
shr eax, 24 |
and al, 0x3F |
shr al, 1 |
193,7 → 193,7 |
AMDK8M: mov eax, 68 ; Athon64-M |
mov ebx, 3 |
mov edx, 0xC0010042 |
int 0x40 |
mcall |
and al, 0x3F |
shr al, 1 |
add al, 4 |
211,7 → 211,7 |
mov eax, 68 ; Pentium M |
mov ebx, 3 |
mov edx, 0x2A |
int 0x40 |
mcall |
shr eax, 22 |
and eax, 0x1F |
mov dl, 10 |
223,7 → 223,7 |
mov eax, 68 ; Pentium 4 / Xeon (model < 2) Willamete |
mov ebx, 3 |
mov edx, 0x2A |
int 0x40 |
mcall |
shr eax, 8 |
and eax, 0x0F |
mov cl, [p4coef + eax] |
231,7 → 231,7 |
@@: mov eax, 68 ; Pentium 4 / Xeon (model >= 2) NorthWood |
mov ebx, 3 |
mov edx, 0x2C |
int 0x40 |
mcall |
shr eax, 24 |
and eax, 0x1F |
mov dl, 10 |
244,7 → 244,7 |
mov eax, 68 ; Pentium Pro / Pentium II / Pentium III |
mov ebx, 3 |
mov edx, 0x2A |
int 0x40 |
mcall |
shr eax, 22 |
test al, 0x20 |
jz @f |
/programs/system/cpuid/trunk/rsatest.inc |
---|
596,12 → 596,9 |
;p=1042128803351525332193283695592003066548124262686459610611886292768993621049491 |
;q=1273712981880077616387281148672409277231717442781838063285512054053473668300963 |
;n=1327372985619988354987062708438042005329282516404896732667039640816200186465366322016844458439816997285872910403676793109807015096535910981266920474905959833 |
macro udata |
{ |
udata |
num1 rd 40 |
num2 rd 40 |
num3 rd 40 |
iter rd 1 |
openkey rd 1 |
} |
openkey rd 1 |
/programs/system/cpuid/trunk/via.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/programs/system/desktop/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/desktop/trunk/desktop.asm |
---|
19,7 → 19,7 |
dd 0,0 ; parameters, reserved |
include 'lang.inc' |
include 'macros.inc' |
include '..\..\..\macros.inc' |
include 'kglobals.inc' |
include 'unpacker.inc' |
;****************************************************************************** |
26,43 → 26,43 |
struct SKIN_HEADER |
.ident dd ? |
.version dd ? |
.params dd ? |
.buttons dd ? |
.bitmaps dd ? |
ident dd ? |
version dd ? |
params dd ? |
buttons dd ? |
bitmaps dd ? |
ends |
struct SKIN_PARAMS |
.skin_height dd ? |
.margin.right dw ? |
.margin.left dw ? |
.margin.bottom dw ? |
.margin.top dw ? |
.colors.inner dd ? |
.colors.outer dd ? |
.colors.frame dd ? |
.colors_1.inner dd ? |
.colors_1.outer dd ? |
.colors_1.frame dd ? |
.dtp.size dd ? |
.dtp.data db 40 dup (?) |
skin_height dd ? |
margin.right dw ? |
margin.left dw ? |
margin.bottom dw ? |
margin.top dw ? |
colors.inner dd ? |
colors.outer dd ? |
colors.frame dd ? |
colors_1.inner dd ? |
colors_1.outer dd ? |
colors_1.frame dd ? |
dtp.size dd ? |
dtp.data db 40 dup (?) |
ends |
struct SKIN_BUTTONS |
.type dd ? |
.pos: |
.left dw ? |
.top dw ? |
.size: |
.width dw ? |
.height dw ? |
type dd ? |
pos: |
left dw ? |
top dw ? |
size: |
width dw ? |
height dw ? |
ends |
struct SKIN_BITMAPS |
.kind dw ? |
.type dw ? |
.data dd ? |
kind dw ? |
type dw ? |
_data dd ? |
ends |
72,7 → 72,7 |
mov ebx,3 |
mov ecx,color_table |
mov edx,4*10 |
int 0x40 |
mcall |
cld |
mov esi,default_skn |
95,7 → 95,7 |
mov eax,23 ; wait here for event |
mov ebx,5 |
int 0x40 |
mcall |
dec eax ; redraw request ? |
jz red |
111,12 → 111,12 |
key: ; key |
mov al,2 ; just read it and ignore |
int 0x40 |
mcall |
jmp still |
button: ; button |
mov al,17 ; get id |
int 0x40 |
mcall |
cmp ah,11 ; read string |
jne no_string |
142,7 → 142,7 |
mov eax,48 |
mov ebx,1 |
mov ecx,1 |
int 0x40 |
mcall |
jmp doapply |
no_3d: |
161,7 → 161,7 |
mov ebx,2 |
mov ecx,color_table |
mov edx,10*4 |
int 0x40 |
mcall |
jmp doapply |
no_apply: |
202,7 → 202,7 |
cmp ah,1 ; terminate |
jnz noid1 |
or eax,-1 |
int 0x40 |
mcall |
noid1: |
jmp still |
213,7 → 213,7 |
pusha |
mov eax,37 |
mov ebx,2 |
int 0x40 |
mcall |
cmp eax,0 |
jne dc1 |
224,7 → 224,7 |
mov eax,37 |
mov ebx,1 |
int 0x40 |
mcall |
mov ebx,eax |
shr ebx,16 |
353,11 → 353,11 |
f11: |
mov eax,10 |
int 0x40 |
mcall |
cmp eax,2 |
jne read_done |
; mov eax,2 |
int 0x40 |
mcall |
shr eax,8 |
cmp eax,13 |
je read_done |
415,13 → 415,13 |
mov ebx,266*65536+60 |
mov ecx,170*65536+30 |
mov edx,[color] |
int 0x40 |
mcall |
; mov eax,13 |
mov ebx,266*65536+60 |
mov ecx,200*65536+10 |
mov edx,[w_work] |
int 0x40 |
mcall |
mov eax,47 |
mov ebx,0+1*256+8*65536 |
428,7 → 428,7 |
mov ecx,[color] |
mov edx,272*65536+201 |
mov esi,[w_work_text] |
int 0x40 |
mcall |
popa |
446,7 → 446,7 |
newcol: |
mov eax,13 |
mov edx,[esi] |
int 0x40 |
mcall |
add ecx,18*65536 |
add esi,4 |
cmp esi,color_table+4*9 |
490,7 → 490,7 |
je .lp2 |
cmp dword[edi+0],eax |
jne @f |
mov ebx,[edi+SKIN_BITMAPS.data] |
mov ebx,[edi+SKIN_BITMAPS._data] |
add ebx,ebp |
mov ecx,[ebx-2] |
mov cx,[ebx+4] |
786,16 → 786,16 |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,1 ; 1, start of draw |
int 0x40 |
mcall |
mov eax,48 |
mov ebx,3 |
mov ecx,app_colours |
mov edx,10*4 |
int 0x40 |
mcall |
mov eax,14 |
int 0x40 |
mcall |
; DRAW WINDOW |
mov eax,0 ; function 0 : define and draw window |
803,8 → 803,8 |
mov ecx,50*65536+255 ; [y start] *65536 + [y size] |
mov edx,[w_work] ; color of work area RRGGBB,8->color |
or edx,0x13000000 |
mov edi,header ; WINDOW LABEL |
int 0x40 |
mov edi,title ; WINDOW LABEL |
mcall |
if lang eq ru |
load_w = (5*2+6*9) |
823,7 → 823,7 |
mov ecx,212*65536+10 |
mov edx,0x4000000B |
mov esi,[w_grab_button] ; button color RRGGBB |
int 0x40 |
mcall |
; mov eax,8 ; LOAD BUTTON |
mov ebx,15*65536+load_w |
830,12 → 830,12 |
mov ecx,(30+18*11)*65536+14 |
mov edx,12 |
mov esi,[w_work_button] |
int 0x40 |
mcall |
; mov eax,8 ; SAVE BUTTON |
add ebx,(load_w+2)*65536-load_w+save_w |
inc edx |
int 0x40 |
mcall |
; mov eax,8 ; 3D |
; mov ebx,15*65536+35 |
842,27 → 842,27 |
; mov ecx,(30+18*12)*65536+14 |
mov ebx,(340-t1.size*6-13)*65536+(5*2+6*4) |
inc edx |
int 0x40 |
mcall |
; mov eax,8 ; FLAT |
add ebx,(5*2+6*4+2)*65536-(5*2+6*4)+flat_w |
inc edx |
int 0x40 |
mcall |
; mov eax,8 ; APPLY BUTTON |
add ebx,(flat_w+6+2)*65536-flat_w+apply_w |
inc edx |
int 0x40 |
mcall |
; mov eax,8 ; LOAD SKIN BUTTON |
mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+load_w |
inc edx |
int 0x40 |
mcall |
; mov eax,8 ; APPLY SKIN BUTTON |
add ebx,(load_w+6+2)*65536-load_w+apply_w |
inc edx |
int 0x40 |
mcall |
mov eax, 4 |
mov ebx, (339-t1.size*6-12)*65536+(30+18*11+4) |
869,18 → 869,18 |
mov ecx, [w_work_button_text] |
mov edx, t1 |
mov esi, t1.size |
int 0x40 |
mcall |
mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+(30+18*11+4) |
mov edx,t2 |
mov esi,t2.size |
int 0x40 |
mcall |
; mov eax, 4 |
; mov ebx, 277*65536+(30+18*12+4) |
; mov edx, t2 |
; mov esi, t2.size |
; int 0x40 |
; mcall |
mov eax,38 ; R G B COLOR GLIDES |
mov ebx,266*65536+285 |
887,14 → 887,14 |
mov ecx,30*65536+30 |
mov edx,0xff0000 |
.newl: |
int 0x40 |
mcall |
pusha |
add ebx,20*65536+20 |
shr edx,8 |
int 0x40 |
mcall |
add ebx,20*65536+20 |
shr edx,8 |
int 0x40 |
mcall |
popa |
sub edx,0x020000 |
add ecx,0x00010001 |
909,7 → 909,7 |
mov esi,[w_work_button] |
newb: |
mov eax,8 |
int 0x40 |
mcall |
add ecx,18*65536 |
inc edx |
cmp edx,40 |
921,7 → 921,7 |
mov esi,32 |
newline: |
mov eax,4 |
int 0x40 |
mcall |
add ebx,18 |
add edx,32 |
cmp [edx],byte 'x' |
951,7 → 951,7 |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,2 ; 2, end of draw |
int 0x40 |
mcall |
ret |
1029,11 → 1029,11 |
sz default_skn, '/RD/1/DEFAULT.SKN',0 |
if lang eq ru |
header db ' ',0 |
title db ' ',0 |
else if lang eq et |
header db 'AKNA SEADED - VALI VÄRV JA VAJUTA OBJEKTILE',0 |
title db 'AKNA SEADED - VALI VÄRV JA VAJUTA OBJEKTILE',0 |
else |
header db 'WINDOWS SETTINGS - DEFINE COLOR AND CLICK ON TARGET',0 |
title db 'WINDOWS SETTINGS - DEFINE COLOR AND CLICK ON TARGET',0 |
end if |
/programs/system/docpack/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
/programs/system/docpack/trunk/build.bat |
---|
1,3 → 1,2 |
fasm docpack.asm docpack |
mtappack docpack |
pause |
/programs/system/docpack/trunk/docpack.asm |
---|
31,7 → 31,7 |
dd I_END+0x400 ; memory for app |
dd I_END+0x400 ; esp |
dd my_param , 0x0 ; I_Param , I_Icon |
include 'MACROS.INC' |
include '..\..\..\MACROS.INC' |
start: |
cmp [my_param],0 |
90,7 → 90,7 |
mov ebx,3 |
mov ecx,sc |
mov edx,sizeof.system_colors |
int 0x40 |
mcall |
mcall 12,1 |
99,8 → 99,8 |
mov ecx,30*65536+FILECOUNT*16+35 |
mov edx,[sc.work] |
or edx,0x33000000 |
mov edi,header |
int 0x40 |
mov edi,title |
mcall |
mov ecx,FILECOUNT |
mov ebx,5 shl 16+100 |
159,7 → 159,7 |
movzx ecx,ah |
jmp start.open |
header db appname,0 |
title db appname,0 |
fileinfo: |
dd 7 |
/programs/system/end/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/end/trunk/end.asm |
---|
6,7 → 6,7 |
; the same about ebx,ecx,edx |
include "lang.inc" |
include "macros.inc" |
include "..\..\..\macros.inc" |
meos_app_start |
code |
17,14 → 17,14 |
mov ebx,3 |
mov ecx,sc |
mov edx,sizeof.system_colors |
int 0x40 |
mcall |
mov al,12 ; eax=12 - tell os about redraw start |
mov bl,1 |
int 0x40 |
mcall |
mov al,14 ; eax=14 - get screen max x & max y |
int 0x40 |
mcall |
movzx ecx,ax |
40,7 → 40,7 |
mov edx,[sc.work] |
mov esi,edx |
mov edi,edx |
int 0x40 |
mcall |
mov edx,0x444444 |
mov al,13 |
71,37 → 71,37 |
mov ecx,[sc.work_text] ; 8b window nro - RR GG BB color |
or ecx,0x90000000 |
mov edx,label1 ; pointer to text beginning |
int 0x40 |
mcall |
mov ebx,15*65536+101 |
mov edx,label4 |
int 0x40 |
mcall |
mov ecx,0x90eeeeee ; 8b window nro - RR GG BB color |
mov ebx,25*65536+30 |
mov edx,label2 ; pointer to text beginning |
int 0x40 |
mcall |
mov ebx,20*65536+64 |
mov edx,label3 |
int 0x40 |
mcall |
mov ebx,45*65536+41 |
mov edx,label5 |
int 0x40 |
mcall |
mov ebx,40*65536+75 |
mov edx,label6 |
int 0x40 |
mcall |
mov al,12 ;end of redraw |
mov ebx,2 |
int 0x40 |
mcall |
still: |
mov eax,10 ; wait here for event |
int 0x40 |
mcall |
dec eax |
jz do_draw |
109,7 → 109,7 |
jnz button |
key: |
mov al,2 ; now eax=2 - get key code |
int 40h |
mcall |
mov al,ah |
cmp al,13 |
jz restart |
123,7 → 123,7 |
button: |
mov al,17 ; now eax=17 - get pressed button id |
int 0x40 |
mcall |
xchg al,ah |
dec eax |
jz power_off |
138,7 → 138,7 |
; jnz still |
close_1: |
or eax,-1 |
int 40h |
mcall |
power_off: |
push 2 |
158,7 → 158,7 |
run_rdsave: |
mov eax,70 |
mov ebx,rdsave |
int 0x40 |
mcall |
jmp still |
data |
/programs/system/icon/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/icon/trunk/icon.asm |
---|
19,13 → 19,13 |
use32 |
org 0x0 |
db 'MENUET01' ; 8 byte id |
dd 0x01 ; header version |
dd 0x01 ; title version |
dd START ; start of code |
dd I_END ; size of image |
dd icon_data+0x30000 ; memory for app |
dd icon_data+0x30000 ; esp |
dd I_Param , 0x0 ; I_Param , I_Icon |
include 'macros.inc' |
include '..\..\..\macros.inc' |
include 'lang.inc' |
COLOR_ORDER equ MENUETOS |
include 'gif_lite.inc' |
55,7 → 55,7 |
still: |
mov eax,10 ; wait here for event |
int 0x40 |
mcall |
dec eax ; redraw request ? |
jz red |
64,7 → 64,7 |
button: ; button |
mov al,17 ; get id |
int 0x40 |
mcall |
shr eax,8 |
139,13 → 139,13 |
mov esi,iconlst |
call lst_path |
mov eax,70 |
int 0x40 |
mcall |
; (2) terminate all icons |
mov eax,9 |
mov ebx,I_END |
or ecx,-1 |
int 0x40 |
mcall |
mov edi,[ebx+30] |
newread2: |
mov esi,1 |
154,7 → 154,7 |
mov eax,9 |
mov ebx,I_END |
mov ecx,esi |
int 0x40 |
mcall |
cmp edi,[ebx+30] |
je newread |
cmp esi,eax |
171,7 → 171,7 |
mov eax,18 |
mov ebx,2 |
mov ecx,esi |
int 0x40 |
mcall |
jmp newread2 |
206,7 → 206,7 |
mov esi, iconname |
call lst_path |
mov eax, 70 |
int 0x40 |
mcall |
jmp still |
no_apply: |
219,14 → 219,14 |
mov ecx,0xc0ff0000 |
mov edx,add_text |
mov edi,0xffffff |
int 0x40 |
mcall |
mov eax,10 |
int 0x40 |
mcall |
cmp eax,3 |
jne still |
mov eax,17 |
int 0x40 |
mcall |
shr eax,8 |
cmp eax,40 |
jb no_f |
285,14 → 285,14 |
mov ecx,0xc0ff0000 |
mov edx,rem_text |
mov edi,0xffffff |
int 0x40 |
mcall |
mov eax,10 |
int 0x40 |
mcall |
cmp eax,3 |
jne no_f;ound |
mov eax,17 |
int 0x40 |
mcall |
shr eax,8 |
cmp eax,40 |
jb red;no_f;ound |
406,7 → 406,7 |
mov ebx,100*65536+180 |
mov ecx,(278+12)*65536+40 |
mov edx,0xffffff |
int 0x40 |
mcall |
xor edi,edi |
mov eax,4 ; icon text |
419,7 → 419,7 |
add edx,[positions+edi*4] |
movzx esi,byte[str_lens+edi] |
inc edi |
int 0x40 |
mcall |
add ebx,14 |
pop ecx |
loop .ll |
504,13 → 504,13 |
pop edi |
f11: |
mov eax,10 |
int 0x40 |
mcall |
cmp eax,2 |
jz fbu |
jmp rs_done |
fbu: |
mov eax,2 |
int 0x40 |
mcall |
shr eax,8 |
cmp eax,13 |
je rs_done |
548,7 → 548,7 |
key: ; key |
mov al,2 ; just read it and ignore |
int 0x40 |
mcall |
jmp still |
; ********************************************* |
560,7 → 560,7 |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,1 ; 1, start of draw |
int 0x40 |
mcall |
; DRAW WINDOW |
xor eax,eax |
567,26 → 567,26 |
mov ebx,210*65536+300 |
mov ecx,30*65536+390-14 |
mov edx,0x13ffffff |
mov edi,header ; WINDOW LABEL |
int 0x40 |
mov edi,title ; WINDOW LABEL |
mcall |
mov eax,13 ; WINDOW AREA |
mov ebx,20*65536+260 |
mov ecx,35*65536+200 |
mov edx,0x3366cc |
int 0x40 |
mcall |
mov eax,38 ; VERTICAL LINE ON WINDOW AREA |
mov ebx,150*65536+150 |
mov ecx,35*65536+235 |
mov edx,0xffffff |
int 0x40 |
mcall |
mov eax,38 ; HOROZONTAL LINE ON WINDOW AREA |
mov ebx,20*65536+280 |
mov ecx,135*65536+135 |
mov edx,0xffffff |
int 0x40 |
mcall |
mov eax,8 ; TEXT ENTER BUTTONS |
mov ebx,20*65536+72 |
593,13 → 593,13 |
mov ecx,(275+1+14)*65536+13-2 |
mov edx,11 |
mov esi,[bcolor] |
int 0x40 |
mcall |
inc edx |
add ecx,14*65536 |
int 0x40 |
mcall |
inc edx |
add ecx,14*65536 |
int 0x40 |
mcall |
; mov eax,8 ; APPLY AND SAVE CHANGES BUTTON |
mov ebx,20*65536+259 |
606,18 → 606,18 |
mov ecx,(329+2)*65536+15-4 |
mov edx,21 |
mov esi,[bcolor] |
int 0x40 |
mcall |
; mov eax,8 ; ADD ICON BUTTON |
mov ebx,20*65536+129-2 |
add ecx,14*65536 |
inc edx |
int 0x40 |
mcall |
; mov eax,8 ; REMOVE ICON BUTTON |
add ebx,(130+2)*65536 |
inc edx |
int 0x40 |
mcall |
mcall ,<20-14,8>,<260-23,32>,30+1 shl 30 ; IMAGE BUTTON |
inc edx |
645,7 → 645,7 |
newline: |
mov ecx,[edx] |
add edx,4 |
int 0x40 |
mcall |
add ebx,14 |
add edx,47 |
cmp [edx],byte 'x' |
673,7 → 673,7 |
push eax |
mov eax,8 |
int 0x40 |
mcall |
pop eax |
no_button: |
702,7 → 702,7 |
call draw_icon |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,2 ; 2, end of draw |
int 0x40 |
mcall |
ret |
778,10 → 778,10 |
db 255,255,255,0, ' ' |
db 0,0,0,0, ' ' |
db 'x' ; <- END MARKER, DONT DELETE |
add_text db ' ',0 |
rem_text db ' ',0 |
header db '¥¥¤¦¥à ¨ª®®ª',0 |
title db '¥¥¤¦¥à ¨ª®®ª',0 |
else if lang eq ge |
text: |
792,10 → 792,10 |
db 255,255,255,0, ' HINZUFUEGEN ENTFERNEN ' |
db 0,0,0,0, 'AUF BUTTON KLICKEN, UM ICON ZU EDITIEREN ' |
db 'x' ; <- END MARKER, DONT DELETE |
add_text db 'AUF UNBENUTZTE ICONPOSITION KLICKEN ',0 |
rem_text db 'ICON ANKLICKEN; DAS GELOESCHT WERDEN SOLL',0 |
header db 'Icon Manager',0 |
title db 'Icon Manager',0 |
else |
text: |
807,9 → 807,8 |
db 0,0,0,0, 'CLICK BUTTON ON ICON POSITION FOR EDIT ' |
db 'x' ; <- END MARKER, DONT DELETE |
add_text db 'CLICK ON A NOT USED POSITION ',0 |
rem_text db 'CLICK ICON POSITION; YOU WANT TO DELETE',0 |
header db 'Icon Manager',0 |
title db 'Icon Manager',0 |
end if |
835,12 → 834,12 |
get_bg_info: |
mov eax,39 |
mov ebx,4 |
int 0x40 |
mcall |
mov [bgrdrawtype],eax |
mov eax,39 ; get background size |
mov ebx,1 |
int 0x40 |
mcall |
mov [bgrxy],eax |
mov ebx,eax |
860,6 → 859,7 |
movzx ebx,[warea.left] |
add eax,ebx |
jmp x_done |
no_left: |
sub eax,9 |
sal eax,6 ;imul eax,64 |
867,7 → 867,6 |
movzx ebx,[warea.right] |
add eax,ebx |
x_done: |
; mov [xpos],eax |
mov [ebp-12],eax |
movzx eax,byte [ebp-20+1] ; y position |
886,7 → 885,6 |
movzx ebx,[warea.bottom] |
add eax,ebx |
y_done: |
; mov [ypos],eax |
mov [ebp-8],eax |
ret |
899,7 → 897,7 |
mov [warea.by_y],ebx |
mov eax,14 |
int 0x40 |
mcall |
add eax,0x00010001 |
mov [scrxy],eax |
917,13 → 915,9 |
mov eax,51 |
mov ebx,1 |
mov ecx,thread |
; mov edx,[thread_stack] |
mov edx,ebp |
; sub edx,4 |
; mov [edx],esi |
mov dword[ebp-4],esi |
int 0x40 |
; add [thread_stack],0x100 |
mcall |
add ebp,0x100 |
mov eax,5 |
931,7 → 925,7 |
wait_thread_start: ;wait until thread draw itself first time |
cmp [create_thread_event],bl |
jz wait_thread_end |
int 0x40 |
mcall |
jmp wait_thread_start |
wait_thread_end: |
dec [create_thread_event] ;reset event |
942,7 → 936,7 |
jnz start_new |
close: |
or eax,-1 |
int 0x40 |
mcall |
thread: |
; pop ebp ;ebp - address of our icon |
953,19 → 947,17 |
mov [create_thread_event],1 |
mov eax,40 |
mov ebx,010101b |
int 0x40 |
mcall |
still2: |
mov eax,10 |
int 0x40 |
mcall |
cmp eax,1 |
je red2 |
cmp eax,3 |
je button2 |
cmp eax,5 |
jne still2 |
call get_bg_info |
mov eax,5 |
985,10 → 977,10 |
call calc_icon_pos |
add ebp,-12 |
mcall 9,I_END,-1 |
mov eax,[I_END+process_information.x_start] |
mov eax,[I_END+process_information.box.left] |
cmp eax,[ebp+0] |
jne @f |
mov eax,[I_END+process_information.y_start] |
mov eax,[I_END+process_information.box.top] |
cmp eax,[ebp+4] |
je .lp1 |
@@: call get_bg_info |
997,15 → 989,9 |
.lp1: call draw_window2 |
jmp still2 |
key2: |
mov al,2 |
int 0x40 |
jmp still2 |
button2: |
mov al,17 |
int 0x40 |
mcall |
mov esi,[ebp+8] |
1020,13 → 1006,9 |
jne .no0 |
and dword[finfo_start+8],0 |
.no0: |
; lea ebx,[ebp+19] |
mov ebx,finfo_start |
mov eax,70 |
int 0x40 |
; dph eax |
; cmp eax,1024 |
; jae still2 |
mcall |
jmp still2 |
fill_paths: |
1035,7 → 1017,6 |
movzx ecx,byte[str_lens+ebx] |
add esi,[positions+ebx*4] |
push esi |
; mov edx,esi |
add esi,ecx |
.l1: |
1077,7 → 1058,6 |
ret |
itoa: |
; mov esi,[current_icon] |
add esi,2 |
mov ebx,10 |
mov ecx,3 |
1088,7 → 1068,6 |
mov [esi],dl |
dec esi |
loop .l0 |
; and byte[esi],0 |
ret |
draw_picture: |
1138,7 → 1117,6 |
stretch: |
cmp [bgrdrawtype],dword 2 |
jne nostretch |
; mov eax,[ypos] |
mov eax,[ebp+4] |
add eax,ecx |
imul eax,[bgry] |
1147,7 → 1125,6 |
div ebx |
imul eax,[bgrx] |
push eax |
; mov eax,[xpos] |
mov eax,[ebp+0] |
add eax,[esp+8] |
imul eax,[bgrx] |
1163,7 → 1140,6 |
cmp [bgrdrawtype],dword 1 |
jne notiled |
; mov eax,[ypos] |
mov eax,[ebp+4] |
add eax,ecx |
cdq |
1172,7 → 1148,6 |
mov eax,edx |
imul eax,[bgrx] |
push eax |
; mov eax,[xpos] |
mov eax,[ebp+0] |
add eax,[esp+8] |
movzx ebx,word [bgrxy+2] |
1187,7 → 1162,7 |
lea ecx,[eax+eax*2] |
mov eax,39 |
mov ebx,2 |
int 0x40 |
mcall |
nobpix: |
1234,7 → 1209,7 |
mov ebx,0x3000 |
mov ecx,52 shl 16 + 52 |
xor edx,edx |
int 0x40 |
mcall |
.ex: |
mov [load_pic],0 |
ret |
1244,20 → 1219,20 |
mov esi,[ebp+8] |
add esi,3 |
push edi |
mov edi,header |
mov edi,title |
mov ecx,8 |
cld |
rep movsb |
pop edi |
mov eax,header |
mov eax,title |
news2: |
cmp [eax],byte 33 |
jb founde |
inc eax |
cmp eax,header+8;11 |
cmp eax,title+8;11 |
jb news2 |
founde: |
sub eax,header |
sub eax,title |
mov [tl],eax |
mov eax,[tl] |
1269,31 → 1244,31 |
mov eax,4 |
xor ecx,ecx ; black shade of text |
mov edx,header |
mov edx,title |
mov esi,[tl] |
add ebx,1 shl 16 ;*65536+1 |
int 0x40 |
mcall |
inc ebx |
int 0x40 |
mcall |
add ebx,1 shl 16 |
int 0x40 |
mcall |
inc ebx |
int 0x40 |
mcall |
sub ebx,1 shl 16 |
int 0x40 |
mcall |
dec ebx |
sub ebx,1 shl 16 |
int 0x40 |
mcall |
sub ebx,1 shl 16 |
dec ebx |
int 0x40 |
mcall |
dec ebx |
add ebx,1 shl 16 |
int 0x40 |
mcall |
inc ebx |
mov ecx,0xffffff |
int 0x40 |
mcall |
mov [draw_pic],0 |
ret |
1306,24 → 1281,22 |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,1 ; 1, start of draw |
int 0x40 |
mcall |
; DRAW WINDOW |
xor eax,eax ; function 0 : define and draw window |
; mov ebx,[xpos-2] |
mov ebx,[ebp+0-2] |
; mov ecx,[ypos-2] |
mov ecx,[ebp+4-2] |
add ebx,[yw] ; [x start] *65536 + [x size] |
add ecx,51 ; [y start] *65536 + [y size] |
mov edx,0x01000000 ; color of work area RRGGBB,8->color gl |
int 0x40 |
mcall |
mov eax,8 ; button |
mov ebx,51 |
mov ecx,50 |
mov edx,0x40000001 |
int 0x40 |
mcall |
mov eax,5 |
mov ebx,1 |
1331,7 → 1304,7 |
xchg [load_pic],bl |
test bl,bl |
je draw_icon_end |
int 0x40 |
mcall |
jmp draw_icon2 |
draw_icon_end: |
1341,7 → 1314,7 |
xchg [draw_pic],bl |
test bl,bl |
je draw_icon_end_2 |
int 0x40 |
mcall |
jmp draw_icon_2 |
draw_icon_end_2: |
1348,7 → 1321,7 |
mov eax,9 |
mov ebx,process_table |
mov ecx,-1 |
int 0x40 |
mcall |
call draw_picture |
call draw_text |
1355,7 → 1328,7 |
mov eax,12 |
mov ebx,2 |
int 0x40 |
mcall |
ret |
1364,8 → 1337,6 |
ya dd 0 |
cur_btn dd 40 |
;xpos dd 15 |
;ypos dd 185 |
draw_pic db 0 |
load_pic db 0 |
create_thread_event db 0 |
1372,18 → 1343,12 |
image dd 0x3000 |
;thread_stack dd 0x5000 |
;icons dd 0 |
I_Param: |
icon_data = I_END+0x1400 |
process_table = I_END+0x2400 |
;I_END: |
bgrx dd ? |
bgry dd ? |
param_str rb 31 |
1411,8 → 1376,5 |
icon_count rd 1 |
gif_file rb GIF_SIZE |
strip_file rb RAW_SIZE |
;I_Param: |
; icon_data = I_END+256 |
I_END: |
/programs/system/icon/trunk/icons.dat |
---|
1,14 → 1,26 |
AA-Sysxtree-004-/RD/1/SYSXTREE - * |
AB-CMD -023-/RD/1/CMD - * |
AC-RDsave -001-/RD/1/RDSAVE - * |
BB-Fasm -012-/RD/1/FASM - * |
CA-Copy -008-/RD/1/copy2 - * |
AA-SYSXTREE-004-/RD/1/SYSXTREE - * |
AB-COPY -008-/RD/1/COPY2 - * |
AC-RDSAVE -020-/RD/1/RDSAVE - * |
BB-CALC -006-/RD/1/CALC - * |
CA-TINYPAD -011-/RD/1/TINYPAD - * |
CB-KFM -007-/RD/1/KFM - * |
JA-VRR -009-/RD/1/VRR - * |
IA-Board -022-/RD/1/BOARD - * |
BA-KFAR -016-/RD/1/kfar - * |
JB-Animage -018-/RD/1/ANIMAGE - * |
CB-Tinypad -011-/RD/1/TINYPAD - * |
IB-AC97 -002-/RD/1/AC97WAV - * |
JC-Docpack -010-/RD/1/DOCPACK - * |
BC-Calc -006-/RD/1/CALC - * |
HA-MTDBG -029-/RD/1/MTDBG - * |
II-C4 -005-/RD/1/GAMES/C4 - * |
JI-MINE -017-/RD/1/GAMES/MINE - * |
IH-TETRIS -021-/RD/1/GAMES/TETRIS - * |
JH-MBLOCKS -013-/RD/1/GAMES/MBLOCKS - * |
HI-PONG -026-/RD/1/GAMES/PONG3 - * |
GI-15 -000-/RD/1/GAMES/15 - * |
HH-LIFE2 -015-/RD/1/DEMOS/LIFE2 - * |
BA-FASM -012-/RD/1/DEVELOP/FASM - * |
JB-ANIMAGE -018-/RD/1/ANIMAGE - * |
CC-CMD -023-/RD/1/CMD - * |
IA-BOARD -022-/RD/1/DEVELOP/BOARD - * |
JC-DOCPACK -010-/RD/1/DOCPAK - * |
BC-KFAR -027-/RD/1/KFAR - * |
HA-MTDBG -029-/RD/1/DEVELOP/MTDBG - * |
AH-PIPES -030-/RD/1/GAMES/PIPES - * |
AI-FARA -031-/RD/1/GAMES/FARA - * |
BI-ARC-II -014-/RD/1/GAMES/ARCANII - * |
BH-XONIX -024-/RD/1/GAMES/XONIX - * |
GH-CHECKERS-002-/RD/1/GAMES/CHECKERS - * |
/programs/system/icon/trunk/iconstrp.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/programs/system/icon_new/trunk/build_icon.bat |
---|
0,0 → 1,5 |
@erase lang.inc |
@echo lang fix ru >lang.inc |
@fasm icon.asm @icon |
@erase lang.inc |
@pause |
/programs/system/icon_new/trunk/build_iconmngr.bat |
---|
0,0 → 1,5 |
@erase lang.inc |
@echo lang fix ru >lang.inc |
@fasm iconmngr.asm iconmngr |
@erase lang.inc |
@pause |
/programs/system/icon_new/trunk/debug-fdo.inc |
---|
0,0 → 1,424 |
; |
; Formatted Debug Output (FDO) |
; Copyright (c) 2005-2006, mike.dld |
; Created: 2005-01-29, Changed: 2006-11-10 |
; |
; For questions and bug reports, mail to mike.dld@gmail.com |
; |
; Available format specifiers are: %s, %d, %u, %x (with partial width support) |
; |
; to be defined: |
; __DEBUG__ equ 1 |
; __DEBUG_LEVEL__ equ 5 |
macro debug_func name { |
if used name |
name@of@func equ name |
} |
macro debug_beginf { |
align 4 |
name@of@func: |
} |
debug_endf fix end if |
macro DEBUGS _sign,[_str] { |
common |
local tp |
tp equ 0 |
match _arg:_num,_str \{ |
DEBUGS_N _sign,_num,_arg |
tp equ 1 |
\} |
match =0 _arg,tp _str \{ |
DEBUGS_N _sign,,_arg |
\} |
} |
macro DEBUGS_N _sign,_num,[_str] { |
common |
pushf |
pushad |
local ..str,..label,is_str |
is_str = 0 |
forward |
if _str eqtype '' |
is_str = 1 |
end if |
common |
if is_str = 1 |
jmp ..label |
..str db _str,0 |
..label: |
add esp,4*8+4 |
mov edx,..str |
sub esp,4*8+4 |
else |
mov edx,_str |
end if |
if ~_num eq |
if _num eqtype eax |
if _num in <eax,ebx,ecx,edx,edi,ebp,esp> |
mov esi,_num |
else if ~_num eq esi |
movzx esi,_num |
end if |
else if _num eqtype 0 |
mov esi,_num |
else |
local tp |
tp equ 0 |
match [_arg],_num \{ |
mov esi,dword[_arg] |
tp equ 1 |
\} |
match =0 =dword[_arg],tp _num \{ |
mov esi,dword[_arg] |
tp equ 1 |
\} |
match =0 =word[_arg],tp _num \{ |
movzx esi,word[_arg] |
tp equ 1 |
\} |
match =0 =byte[_arg],tp _num \{ |
movzx esi,byte[_arg] |
tp equ 1 |
\} |
match =0,tp \{ |
'Error: specified string width is incorrect' |
\} |
end if |
else |
mov esi,0x7FFFFFFF |
end if |
call fdo_debug_outstr |
popad |
popf |
} |
macro DEBUGD _sign,_dec { |
local tp |
tp equ 0 |
match _arg:_num,_dec \{ |
DEBUGD_N _sign,_num,_arg |
tp equ 1 |
\} |
match =0 _arg,tp _dec \{ |
DEBUGD_N _sign,,_arg |
\} |
} |
macro DEBUGD_N _sign,_num,_dec { |
pushf |
pushad |
if (~_num eq) |
if (_dec eqtype eax | _dec eqtype 0) |
'Error: precision allowed only for in-memory variables' |
end if |
if (~_num in <1,2,4>) |
if _sign |
'Error: 1, 2 and 4 are only allowed for precision in %d' |
else |
'Error: 1, 2 and 4 are only allowed for precision in %u' |
end if |
end if |
end if |
if _dec eqtype eax |
if _dec in <ebx,ecx,edx,esi,edi,ebp,esp> |
mov eax,_dec |
else if ~_dec eq eax |
if _sign = 1 |
movsx eax,_dec |
else |
movzx eax,_dec |
end if |
end if |
else if _dec eqtype 0 |
mov eax,_dec |
else |
add esp,4*8+4 |
if _num eq |
mov eax,dword _dec |
else if _num = 1 |
if _sign = 1 |
movsx eax,byte _dec |
else |
movzx eax,byte _dec |
end if |
else if _num = 2 |
if _sign = 1 |
movsx eax,word _dec |
else |
movzx eax,word _dec |
end if |
else |
mov eax,dword _dec |
end if |
sub esp,4*8+4 |
end if |
mov cl,_sign |
call fdo_debug_outdec |
popad |
popf |
} |
macro DEBUGH _sign,_hex { |
local tp |
tp equ 0 |
match _arg:_num,_hex \{ |
DEBUGH_N _sign,_num,_arg |
tp equ 1 |
\} |
match =0 _arg,tp _hex \{ |
DEBUGH_N _sign,,_arg |
\} |
} |
macro DEBUGH_N _sign,_num,_hex { |
pushf |
pushad |
if (~_num eq) & (~_num in <1,2,3,4,5,6,7,8>) |
'Error: 1..8 are only allowed for precision in %x' |
end if |
if _hex eqtype eax |
if _hex in <eax,ebx,ecx,edx,esi,edi,ebp,esp> |
if ~_hex eq eax |
mov eax,_hex |
end if |
else if _hex in <ax,bx,cx,dx,si,di,bp,sp> |
if ~_hex eq ax |
movzx eax,_hex |
end if |
shl eax,16 |
if (_num eq) |
mov edx,4 |
end if |
else if _hex in <al,ah,bl,bh,cl,ch,dl,dh> |
if ~_hex eq al |
movzx eax,_hex |
end if |
shl eax,24 |
if (_num eq) |
mov edx,2 |
end if |
end if |
else if _hex eqtype 0 |
mov eax,_hex |
else |
add esp,4*8+4 |
mov eax,dword _hex |
sub esp,4*8+4 |
end if |
if ~_num eq |
mov edx,_num |
else |
if ~_hex eqtype eax |
mov edx,8 |
end if |
end if |
call fdo_debug_outhex |
popad |
popf |
} |
;----------------------------------------------------------------------------- |
debug_func fdo_debug_outchar |
debug_beginf |
pushad |
mov cl,al |
mov ebx,1 |
mov eax,63 |
int 0x40 |
popad |
ret |
debug_endf |
debug_func fdo_debug_outstr |
debug_beginf |
mov eax,63 |
mov ebx,1 |
.l1: dec esi |
js .l2 |
mov cl,[edx] |
or cl,cl |
jz .l2 |
int 0x40 |
inc edx |
jmp .l1 |
.l2: ret |
debug_endf |
debug_func fdo_debug_outdec |
debug_beginf |
or cl,cl |
jz @f |
or eax,eax |
jns @f |
neg eax |
push eax |
mov al,'-' |
call fdo_debug_outchar |
pop eax |
@@: push 10 |
pop ecx |
push -'0' |
.l1: xor edx,edx |
div ecx |
push edx |
test eax,eax |
jnz .l1 |
.l2: pop eax |
add al,'0' |
jz .l3 |
call fdo_debug_outchar |
jmp .l2 |
.l3: ret |
debug_endf |
debug_func fdo_debug_outhex |
__fdo_hexdigits db '0123456789ABCDEF' |
debug_beginf |
mov cl,dl |
neg cl |
add cl,8 |
shl cl,2 |
rol eax,cl |
.l1: rol eax,4 |
push eax |
and eax,0x0000000F |
mov al,[__fdo_hexdigits+eax] |
call fdo_debug_outchar |
pop eax |
dec edx |
jnz .l1 |
ret |
debug_endf |
;----------------------------------------------------------------------------- |
macro DEBUGF _level,_format,[_arg] { |
common |
if __DEBUG__ = 1 & _level >= __DEBUG_LEVEL__ |
local ..f1,f2,a1,a2,c1,c2,c3,..lbl |
_debug_str_ equ __debug_str_ # a1 |
a1 = 0 |
c2 = 0 |
c3 = 0 |
f2 = 0 |
repeat ..lbl-..f1 |
virtual at 0 |
db _format,0,0 |
load c1 word from %-1 |
end virtual |
if c1 = '%s' |
virtual at 0 |
db _format,0,0 |
store word 0 at %-1 |
load c1 from f2-c2 |
end virtual |
if c1 <> 0 |
DEBUGS 0,_debug_str_+f2-c2 |
end if |
c2 = c2 + 1 |
f2 = %+1 |
DEBUGF_HELPER S,a1,0,_arg |
else if c1 = '%x' |
virtual at 0 |
db _format,0,0 |
store word 0 at %-1 |
load c1 from f2-c2 |
end virtual |
if c1 <> 0 |
DEBUGS 0,_debug_str_+f2-c2 |
end if |
c2 = c2 + 1 |
f2 = %+1 |
DEBUGF_HELPER H,a1,0,_arg |
else if c1 = '%d' | c1 = '%u' |
local c4 |
if c1 = '%d' |
c4 = 1 |
else |
c4 = 0 |
end if |
virtual at 0 |
db _format,0,0 |
store word 0 at %-1 |
load c1 from f2-c2 |
end virtual |
if c1 <> 0 |
DEBUGS 0,_debug_str_+f2-c2 |
end if |
c2 = c2 + 1 |
f2 = %+1 |
DEBUGF_HELPER D,a1,c4,_arg |
else if c1 = '\n' |
c3 = c3 + 1 |
end if |
end repeat |
virtual at 0 |
db _format,0,0 |
load c1 from f2-c2 |
end virtual |
if (c1<>0)&(f2<>..lbl-..f1-1) |
DEBUGS 0,_debug_str_+f2-c2 |
end if |
virtual at 0 |
..f1 db _format,0 |
..lbl: |
__debug_strings equ __debug_strings,_debug_str_,<_format>,..lbl-..f1-1-c2-c3 |
end virtual |
end if |
} |
macro __include_debug_strings dummy,[_id,_fmt,_len] { |
common |
local c1,a1,a2 |
forward |
if defined _len & ~_len eq |
_id: |
a1 = 0 |
a2 = 0 |
repeat _len |
virtual at 0 |
db _fmt,0,0 |
load c1 word from %+a2-1 |
end virtual |
if (c1='%s')|(c1='%x')|(c1='%d')|(c1='%u') |
db 0 |
a2 = a2 + 1 |
else if (c1='\n') |
dw $0A0D |
a1 = a1 + 1 |
a2 = a2 + 1 |
else |
db c1 and 0x0FF |
end if |
end repeat |
db 0 |
end if |
} |
macro DEBUGF_HELPER _letter,_num,_sign,[_arg] { |
common |
local num |
num = 0 |
forward |
if num = _num |
DEBUG#_letter _sign,_arg |
end if |
num = num+1 |
common |
_num = _num+1 |
} |
macro include_debug_strings { |
if __DEBUG__ = 1 |
match dbg_str,__debug_strings \{ |
__include_debug_strings dbg_str |
\} |
end if |
} |
/programs/system/icon_new/trunk/icon.asm |
---|
0,0 → 1,539 |
; |
; ICON APPLICATION |
; |
; Compile with FASM for Menuet |
; |
; August 12, 2004 - 32-bit ICO format support (mike.dld) |
; March 14, 2007 - rewriten for KolibriOS (heavyiron) |
use32 |
org 0x0 |
db 'MENUET01' ; 8 byte id |
dd 0x01 ; header version |
dd START ; start of code |
dd I_END ; size of image |
dd 0x8000 ; memory for app |
dd 0x8000 ; esp |
dd I_PARAM , 0x0 ; I_Param , I_Icon |
; params 4 xpos 4 ypos 30 iconfile 30 startfile 10 label |
; +0 +4 +8 +38 +68 |
include '..\..\..\macros.inc' |
;__DEBUG__ fix 1 |
;__DEBUG_LEVEL__ fix 1 |
;include 'debug-fdo.inc' |
flipdelay = 5 |
START: ; start of execution |
cmp [I_PARAM],byte 0 |
jne nohalt |
or eax,-1 |
mcall |
nohalt: |
mov eax,[I_PARAM+0] |
sub eax,0x01010101 |
mov [xpos],eax |
mov eax,[I_PARAM+4] |
sub eax,0x01010101 |
mov [ypos],eax |
mov esi,I_PARAM+8 |
mov edi,fname |
mov ecx,30 |
cld |
rep movsb |
call fill_paths |
;DEBUGF 1,"fname: '%s'\n",fname |
mov esi,I_PARAM+8+30 |
mov edi,start_file |
mov ecx,30 |
rep movsb |
call fill_paths |
mov esi,I_PARAM+8+30+30 |
mov edi,labelt |
mov ecx,10 |
cld |
rep movsb |
mov eax,40 ; get also event background change |
mov ebx,10101b |
mcall |
call get_bg |
red: ; redraw |
call draw_window |
still: |
mov eax,10 ; wait here for event |
mcall |
cmp eax,1 ; redraw request ? |
jz red |
cmp eax,3 ; button in buffer ? |
jz button |
check: |
call get_bg |
call draw_icon |
mcall 5,80 |
jmp still |
button: ; button |
mov al,17 ; get id |
mcall |
mov eax,70 |
mov ebx,finfo_start |
mcall |
call flip_icon |
jmp still |
flip_icon: |
mov eax,1 |
call flip |
mov eax,2 |
call flip |
mov eax,3 |
call flip |
mov eax,4 |
call flip |
mov eax,5 |
call flip |
mov eax,4 |
call flip |
mov eax,3 |
call flip |
mov eax,2 |
call flip |
mov eax,1 |
call flip |
mov eax,0 |
call flip |
ret |
flip: |
mov [iconstate],eax |
call get_bg |
call draw_icon |
mov eax,5 |
mov ebx,flipdelay |
mcall |
ret |
fill_paths: |
dec edi |
mov ecx,30 |
std |
mov al,' ' |
repe scasb |
cld |
mov byte[edi+2],0 |
ret |
draw_window: |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,1 ; 1, start of draw |
mcall |
; DRAW WINDOW |
xor eax,eax ; function 0 : define and draw window |
mov ebx,[xpos-2] |
mov ecx,[ypos-2] |
add ebx,[yw] ; [x start] *65536 + [x size] |
add ecx,67 ; [y start] *65536 + [y size] |
mov edx,0x01000000 ; color of work area RRGGBB,8->color gl |
mcall |
mov eax,8 ; button |
mov ebx,51 |
mov ecx,67 |
mov edx,0x60000001 |
mcall |
call draw_icon |
mov eax,12 |
mov ebx,2 |
mcall |
ret |
get_bg: |
mov eax,14 |
mcall |
add eax,0x00010001 |
mov [scrxy],eax |
mov eax,39 ; get background type |
mov ebx,4 |
mcall |
mov [bgrdrawtype],eax |
mov eax,39 ; get background size |
mov ebx,1 |
mcall |
mov [bgrxy],eax |
mov eax,70 |
mov ebx,finfo |
mcall |
mov [itype],0 |
cmp word[I_END+256],'BM' |
je @f |
inc [itype] |
@@: |
mov ebx,[yw] |
xor ecx,ecx ; 10608 = 52*68*3 - bg image |
mov esi,I_END+256+9662 ; 9662 - icon file image |
mov edi,51*3 |
newb: |
push ebx ecx |
yesbpix: |
cmp [bgrdrawtype],dword 2 |
jne nostretch |
mov eax,[ypos] |
add eax,ecx |
xor edx,edx |
movzx ebx,word [bgrxy] |
mul ebx |
xor edx,edx |
movzx ebx,word [scrxy] |
div ebx |
xor edx,edx |
movzx ebx,word [bgrxy+2] |
mul ebx |
push eax |
mov eax,[xpos] |
add eax,[esp+8] |
xor edx,edx |
movzx ebx,word [bgrxy+2] |
mul ebx |
xor edx,edx |
movzx ebx,word [scrxy+2] |
div ebx |
add eax,[esp] |
add esp,4 |
nostretch: |
cmp [bgrdrawtype],dword 1 |
jne notiled |
mov eax,[ypos] |
add eax,ecx |
xor edx,edx |
movzx ebx,word [bgrxy] |
div ebx |
mov eax,edx |
movzx ebx,word [bgrxy+2] |
xor edx,edx |
mul ebx |
push eax |
mov eax,[xpos] |
add eax,[esp+8] |
movzx ebx,word [bgrxy+2] |
xor edx,edx |
div ebx |
mov eax,edx |
add eax,[esp] |
add esp,4 |
notiled: |
lea ecx,[eax+eax*2] |
mov eax,39 |
mov ebx,2 |
mcall |
nobpix: |
pop ecx ebx |
mov [esi+edi+0],al |
mov [esi+edi+1],ah |
shr eax,16 |
mov [esi+edi+2],al |
sub edi,3 |
dec ebx |
jge newb |
mov ebx,[yw] |
add esi,52*3 |
mov edi,51*3 |
inc ecx |
cmp ecx,68 |
jne newb |
;***************************************************************************** |
mov esi,I_END+256+9662+10608-17*52*3+3 ;! 54+32*3*33-3 |
mov eax,[iconstate] |
mov eax,[add_table0+eax*4] |
add esi,eax |
mov edi,I_END+256+62 |
cmp [itype],0 |
jne @f |
mov edi,I_END+256+54 |
@@: |
xor ebp,ebp |
mov [pixl],0 |
newp: |
virtual at edi |
r db ? |
g db ? |
b db ? |
a db ? |
end virtual |
virtual at esi+ebp |
ar db ? |
ag db ? |
ab db ? |
end virtual |
movzx ecx,[a] |
push ebp |
cmp [iconstate],3 |
jb @f |
neg ebp |
@@: |
cmp [itype],0 |
jne @f |
mov eax,[edi] |
and eax,$00FFFFFF |
jnz @f |
jmp no_transp |
@@: |
movzx eax,[r] |
cmp [itype],0 |
je @f |
movzx ebx,byte[ar] |
sub eax,ebx |
imul eax,ecx |
xor edx,edx |
or ebx,$0FF |
div ebx |
movzx ebx,[ar] |
add eax,ebx |
@@: |
mov [esi+ebp+0],al |
movzx eax,[g] |
cmp [itype],0 |
je @f |
movzx ebx,[ag] |
sub eax,ebx |
imul eax,ecx |
xor edx,edx |
or ebx,$0FF |
div ebx |
movzx ebx,[ag] |
add eax,ebx |
@@: |
mov [esi+ebp+1],al |
movzx eax,[b] |
cmp [itype],0 |
je @f |
movzx ebx,[ab] |
sub eax,ebx |
imul eax,ecx |
xor edx,edx |
or ebx,$0FF |
div ebx |
movzx ebx,[ab] |
add eax,ebx |
@@: |
mov [esi+ebp+2],al |
no_transp: |
pop ebp |
movzx eax,[itype] |
imul eax,6 |
add eax,[iconstate] |
push eax |
mov eax,[add_table1+eax*4] |
add edi,eax |
add ebp,3 |
pop eax |
mov eax,[add_table2+eax*4] |
add [pixl],eax |
cmp [pixl],48 |
jl newp |
xor ebp,ebp |
mov [pixl],0 |
sub esi,52*3 |
cmp esi,I_END+256+9662+52*4*3 |
jge newp |
;***************************************************************************** |
ret |
draw_picture: |
mov eax,7 |
mov ebx,I_END+256+9662 |
mov ecx,52 shl 16 + 68 |
xor edx,edx |
mcall |
ret |
draw_icon: |
call draw_picture |
call draw_text |
ret |
draw_text: |
mov eax,labelt ;text_length |
news: |
cmp [eax],byte 40 |
jb founde |
inc eax |
cmp eax,labelt+11 |
jb news |
founde: |
sub eax,labelt |
lea eax,[eax+eax*2] ; eax *= char_width/2 |
shl eax,16 |
mov ebx,26*65536+58 |
sub ebx,eax |
movzx ecx,byte [I_PARAM+8+30+30+10] |
shl ecx,16 |
add ebx,ecx |
; replaced - delete commented lines below if you like that style |
mov eax,4 ; white text |
xor ecx,ecx |
mov edx,labelt |
mov esi,labellen-labelt |
add ebx,1 shl 16 ;*65536+1 |
mcall |
inc ebx |
mcall |
add ebx,1 shl 16 |
mcall |
inc ebx |
mcall |
sub ebx,1 shl 16 |
mcall |
dec ebx |
sub ebx,1 shl 16 |
mcall |
sub ebx,1 shl 16 |
dec ebx |
mcall |
dec ebx |
add ebx,1 shl 16 |
mcall |
inc ebx |
mov ecx,0xffffff |
mcall |
;xor ecx,ecx ; black shade of text |
;mov edx,labelt |
;mov esi,labellen-labelt |
;add ebx,1*65536+1 |
;mcall |
;sub ebx,1*65536+1 |
;mov ecx,0xffffff |
;mcall |
ret |
; DATA AREA |
itype db 0 |
align 4 |
tl dd 2 |
yw dd 51 |
xpos dd 15 |
ypos dd 185 |
bgrxy dd 0x0 |
scrxy dd 0x0 |
bgrdrawtype dd 0x0 |
iconstate dd 0 |
add_table0 dd (24-6*4)*3,(24-6*2)*3,(24-6*1)*3,\ |
(24+6*1)*3,(24+6*2)*3,(24+6*4)*3 |
add_table1 dd 3,6,12,12,6,3 |
dd 4,8,16,16,8,4 |
add_table2 dd 1,2,4,4,2,1 |
dd 1,2,4,4,2,1 |
finfo_start: |
dd 7 |
dd 0 |
dd 0 |
dd 0 |
dd 0 |
db 0 |
dd start_file |
finfo: |
dd 0 |
dd 0 |
dd 0 |
dd 9662 |
dd I_END+256 |
db 0 |
dd fname |
start_file rb 30 |
fname rb 30 |
labelt: |
rb 10 |
labellen: |
pixl dd ? |
;include_debug_strings |
I_PARAM: |
I_END: |
/programs/system/icon_new/trunk/iconmngr.asm |
---|
0,0 → 1,780 |
; |
; DESKTOP ICON MANAGER |
; |
; Compile with FASM for Menuet |
; |
use32 |
org 0x0 |
db 'MENUET01' ; 8 byte id |
dd 0x01 ; header version |
dd START ; start of code |
dd I_END ; size of image |
dd 0x4000 ; memory for app |
dd 0x4000 ; esp |
dd I_Param , 0x0 ; I_Param , I_Icon |
include '..\..\..\macros.inc' |
include 'lang.inc' |
START: ; start of execution |
call load_icon_list |
call check_parameters |
red: ; redraw |
call draw_window ; at first, draw the window |
still: |
mov eax,10 ; wait here for event |
mcall |
dec eax ; redraw request ? |
jz red |
dec eax ; key in buffer ? |
jz key |
button: ; button |
mov al,17 ; get id |
mcall |
shr eax,8 |
cmp eax,1 ; button id=1 ? |
jne noclose |
or eax,-1 ; close this program |
mcall |
noclose: |
cmp eax,11 |
jb no_str |
cmp eax,13 |
jg no_str |
call read_string |
jmp still |
no_str: |
cmp eax,21 ; apply changes |
jne no_apply |
; (1) save list |
mov eax,70 |
mov ebx,finfo |
mov dword[ebx],2 |
mov edx,78 |
imul edx,dword [icons] |
mov dword[ebx+12],edx |
mcall |
; (2) terminate all icons |
mov esi,1 |
newread: |
inc esi |
mov eax,9 |
mov ebx,I_END |
mov ecx,esi |
mcall |
cmp esi,eax |
jg all_terminated |
cmp [I_END+10],dword '@ICO' |
jne newread |
mov eax,18 |
mov ebx,2 |
mov ecx,esi |
mcall |
mov esi,1 |
jmp newread |
all_terminated: |
apply_changes: |
; (3) start icons from icon_data |
mov edi,[icons] |
mov esi,icon_data |
start_new: |
push edi |
push esi |
movzx eax,byte [esi] ; x position |
cmp eax,'E' |
jg no_left |
sub eax,65 |
imul eax,70 |
add eax,15 |
jmp x_done |
no_left: |
sub eax,65 |
mov ebx,9 |
sub ebx,eax |
imul ebx,70 |
push ebx |
mov eax,14 |
mcall |
pop ebx |
shr eax,16 |
sub eax,51+15 |
sub eax,ebx |
x_done: |
add eax,0x01010101 |
mov [icon_start_parameters],eax |
movzx eax,byte [esi+1] ; y position |
cmp eax,'E' |
jg no_up |
sub eax,65 |
imul eax,80 |
add eax,12 |
jmp y_done |
no_up: |
sub eax,65 |
mov ebx,9 |
sub ebx,eax |
imul ebx,80 |
push ebx |
mov eax,14 |
mcall |
pop ebx |
and eax,0xffff |
sub eax,-1+20 |
sub eax,ebx |
y_done: |
add eax,0x01010101 |
mov [icon_start_parameters+4],eax |
mov esi,[esp] ; icon picture |
add esi,3 |
mov edi,icon_start_parameters+8 |
mov ecx,30 |
cld |
rep movsb |
mov esi,[esp] ; icon application |
add esi,34 |
mov edi,icon_start_parameters+8+30 |
mov ecx,30 |
cld |
rep movsb |
mov esi,[esp] ; icon text |
add esi,65 |
mov edi,icon_start_parameters+8+30+30 |
mov ecx,10 |
cld |
rep movsb |
mov byte[edi],0 ; ASCII -> ASCIIZ |
mov eax,70 |
mov ebx,finfo_start |
mcall |
pop esi edi |
add esi,76+2 |
dec edi |
jnz start_new |
cmp [I_Param],byte 0 |
je still |
or eax,-1 |
mcall |
no_apply: |
cmp eax,22 ; user pressed the 'add icon' button |
jne no_add_icon |
mov eax,13 |
mov ebx,19*65536+260 |
mov ecx,225*65536+10 |
mov edx,0xffffff |
mcall |
mov eax,4 |
mov ebx,19*65536+225 |
mov ecx,0xff0000 |
mov edx,add_text |
mov esi,add_text_len-add_text |
mcall |
mov eax,10 |
mcall |
cmp eax,3 |
jne still |
mov al,17 |
mcall |
shr eax,8 |
cmp eax,40 |
jb no_f |
sub eax,40 |
xor edx,edx ; bcd -> 10 |
mov ebx,16 |
div ebx |
imul eax,10 |
add eax,edx |
mov ebx,eax |
add ebx,icons_reserved |
cmp [ebx],byte 'x' |
je no_f |
mov [ebx],byte 'x' |
xor edx,edx |
mov ebx,10 |
div ebx |
add eax,65 |
add edx,65 |
mov [icon_default+0],dl |
mov [icon_default+1],al |
inc dword [icons] |
mov edi,[icons] |
dec edi |
imul edi,76+2 |
add edi,icon_data |
mov [current_icon],edi |
mov esi,icon_default |
mov ecx,76+2 |
cld |
rep movsb |
no_f: |
call draw_window |
jmp still |
no_add_icon: |
cmp eax,23 ; user pressed the remove icon button |
jne no_remove_icon |
mov eax,13 |
mov ebx,19*65536+260 |
mov ecx,225*65536+10 |
mov edx,0xffffff |
mcall |
mov eax,4 |
mov ebx,19*65536+225 |
mov ecx,0xff0000 |
mov edx,rem_text |
mov esi,rem_text_len-rem_text |
mcall |
mov eax,10 |
mcall |
cmp eax,3 |
jne no_found |
mov al,17 |
mcall |
shr eax,8 |
cmp eax,40 |
jb no_found |
sub eax,40 |
xor edx,edx |
mov ebx,16 |
div ebx |
imul eax,10 |
add eax,edx |
mov ebx,eax |
add ebx,icons_reserved |
cmp [ebx],byte 'x' |
jne no_found |
mov [ebx],byte ' ' |
xor edx,edx |
mov ebx,10 |
div ebx |
shl eax,8 |
mov al,dl |
add eax,65*256+65 |
mov esi,icon_data |
mov edi,76+2 |
imul edi,[icons] |
add edi,icon_data |
news: |
cmp word [esi],ax |
je foundi |
add esi,76+2 |
cmp esi,edi |
jb news |
jmp no_found |
foundi: |
mov ecx,edi |
sub ecx,esi |
mov edi,esi |
add esi,76+2 |
cld |
rep movsb |
dec [icons] |
mov eax,icon_data |
mov [current_icon],eax |
no_found: |
call draw_window |
jmp still |
no_remove_icon: |
cmp eax,40 ; user pressed button for icon position |
jb no_on_screen_button |
sub eax,40 |
mov edx,eax |
shl eax,4 |
and edx,0xf |
mov dh,ah |
add edx,65*256+65 |
mov esi,icon_data |
mov ecx,[icons] |
cld |
findl1: |
cmp dx,[esi] |
je foundl1 |
add esi,76+2 |
loop findl1 |
jmp still |
foundl1: |
mov [current_icon],esi |
call print_strings |
jmp still |
no_on_screen_button: |
jmp still |
key: ; key |
mov al,2 ; just read it and ignore |
mcall |
jmp still |
current_icon dd icon_data |
print_strings: |
pusha |
mov eax,13 ; clear text area |
mov ebx,95*65536+180 |
mov ecx,253*65536+40 |
mov edx,0xffffff |
mcall |
mov eax,4 ; icon text |
mov ebx,95*65536+253 |
mov ecx,0x000000 |
mov edx,[current_icon] |
add edx,65 |
mov esi,10 |
mcall |
;mov eax,4 ; icon application |
add ebx,14 |
mov edx,[current_icon] |
add edx,34 |
mov esi,30 |
mcall |
;mov eax,4 ; icon file |
add ebx,14 |
mov edx,[current_icon] |
add edx,3 |
mov esi,30 |
mcall |
popa |
ret |
load_icon_list: |
;pusha |
mov eax,70 |
mov ebx,finfo |
mov dword[ebx],0 |
mov dword[ebx+12],4096 ; max size of icons.dat (in current format) is 4 kb |
mcall |
mov eax,ebx |
add eax,2 |
xor edx,edx |
mov ebx,76+2 |
div ebx |
mov [icons],eax |
mov edi,icons_reserved ; clear reserved area |
mov eax,32 |
mov ecx,10*10 |
cld |
rep stosb |
mov ecx,[icons] ; set used icons to reserved area |
mov esi,icon_data |
cld |
ldl1: |
movzx ebx,byte [esi+1] |
sub ebx,65 |
imul ebx,10 |
movzx eax,byte [esi] |
add ebx,eax |
sub ebx,65 |
add ebx,icons_reserved |
mov [ebx],byte 'x' |
add esi,76+2 |
loop ldl1 |
;popa |
ret |
check_parameters: |
cmp [I_Param],dword 'BOOT' |
je chpl1 |
ret |
chpl1: |
mov eax,21 |
jmp apply_changes |
positions dd 65,34,3 |
read_string: |
;pusha |
sub eax,11 |
shl eax,2 |
add eax,positions |
mov eax,[eax] |
mov esi,[current_icon] |
add esi,eax |
mov [addr],esi |
mov edi,[addr] |
mov eax,'_' |
mov ecx,30 |
cld |
rep stosb |
call print_strings |
mov edi,[addr] |
f11: |
mov eax,10 |
mcall |
cmp eax,2 |
jz fbu |
jmp rs_done |
fbu: |
mov eax,2 |
mcall |
shr eax,8 |
cmp eax,13 |
je rs_done |
cmp eax,8 |
jnz nobsl |
cmp edi,[addr] |
jz f11 |
dec edi |
mov [edi],byte ' ' |
call print_strings |
jmp f11 |
nobsl: |
cmp eax,31 |
jbe f11 |
keyok: |
mov [edi],al |
call print_strings |
add edi,1 |
mov esi,[addr] |
add esi,30 |
cmp esi,edi |
jnz f11 |
rs_done: |
mov ecx,[addr] |
add ecx,30 |
sub ecx,edi |
mov eax,32 |
cld |
rep stosb |
call print_strings |
;popa |
ret |
; ********************************************* |
; ******* WINDOW DEFINITIONS AND DRAW ******** |
; ********************************************* |
draw_window: |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,1 ; 1, start of draw |
mcall |
; DRAW WINDOW |
xor eax,eax |
mov ebx,210*65536+300 |
mov ecx,30*65536+390 |
mov edx,0x33ffffff |
mov edi,title |
mcall |
mov eax,13 ; WINDOW AREA |
mov ebx,15*65536+260 |
mov ecx,10*65536+200 |
mov edx,0x3366cc |
mcall |
mov eax,38 ; VERTICAL LINE ON WINDOW AREA |
mov ebx,145*65536+145 |
mov ecx,10*65536+235 |
mov edx,0xffffff |
mcall |
;mov eax,38 ; HOROZONTAL LINE ON WINDOW AREA |
mov ebx,15*65536+280 |
mov ecx,110*65536+110 |
mov edx,0xffffff |
mcall |
mov eax,8 ; TEXT ENTER BUTTONS |
mov ebx,15*65536+72 |
mov ecx,250*65536+13 |
mov edx,11 |
mov esi,[bcolor] |
mcall |
inc edx |
add ecx,14*65536 |
mcall |
inc edx |
add ecx,14*65536 |
mcall |
;mov eax,8 ; APPLY AND SAVE CHANGES BUTTON |
mov ebx,15*65536+259 |
mov ecx,304*65536+15 |
mov edx,21 |
mov esi,[bcolor] |
mcall |
;mov eax,8 ; ADD ICON BUTTON |
mov ebx,15*65536+129 |
add ecx,14*2*65536 |
inc edx |
mcall |
;mov eax,8 ; REMOVE ICON BUTTON |
add ebx,130*65536 |
inc edx |
mcall |
xor eax,eax ; DRAW BUTTONS ON WINDOW AREA |
mov ebx,15*65536+25 |
mov ecx,10*65536+19 |
mov edi,icon_table |
mov edx,40 |
newbline: |
cmp [edi],byte 'x' |
jne no_button |
mov esi,0x5577cc |
cmp [edi+100],byte 'x' |
jne nores |
mov esi,0xcc5555 |
nores: |
push eax |
mov eax,8 |
mcall |
pop eax |
no_button: |
add ebx,26*65536 |
inc edi |
inc edx |
inc al |
cmp al,9 |
jbe newbline |
mov al,0 |
add edx,6 |
ror ebx,16 |
mov bx,15 |
ror ebx,16 |
add ecx,20*65536 |
inc ah |
cmp ah,9 |
jbe newbline |
mov ebx,19*65536+225 |
mov ecx,0xffffff |
mov edx,text |
mov esi,37 |
mov eax,4 |
newline: |
mov ecx,[edx] |
add edx,4 |
mcall |
add ebx,14 |
add edx,37 |
cmp [edx],byte 'x' |
jne newline |
call print_strings |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,2 ; 2, end of draw |
mcall |
ret |
; DATA AREA |
bcolor dd 0x335599 |
icon_table: |
times 4 db 'xxxx xxxx' |
times 2 db ' ' |
times 3 db 'xxxx xxxx' |
times 1 db ' ' |
icons_reserved: |
times 10 db ' ' |
text: |
db 0,0,0,0, 'CLICK ON ICON POSITION TO EDIT ' |
db 0,0,0,0, ' ' |
db 255,255,255,0 , ' ICON TEXT ' |
db 255,255,255,0 , ' ICON APP ' |
db 255,255,255,0 , ' ICON FILE ' |
db 0,0,0,0, ' ' |
db 255,255,255,0, ' SAVE AND APPLY ALL CHANGES ' |
db 0,0,0,0, ' ' |
db 255,255,255,0, ' ADD ICON REMOVE ICON' |
db 'x' ; <- END MARKER, DONT DELETE |
title db 'Icon manager',0 |
icons dd 0 |
addr dd 0 |
ya dd 0 |
add_text db 'PRESS BUTTON OF UNUSED ICON POSITION' |
add_text_len: |
rem_text db 'PRESS BUTTON OF USED ICON' |
rem_text_len: |
finfo_start: |
dd 7 |
dd 0 |
dd icon_start_parameters |
dd 0 |
dd 0 |
db 0 |
dd icon_path |
icon_path db '/rd/1/@ICON',0 |
finfo: |
dd 0 |
dd 0 |
dd 0 |
dd 0 |
dd icon_data |
db 0 |
dd icon_list |
icon_list db '/rd/1/icons.dat',0 |
icon_start_parameters: |
db 25,1,1,1 |
db 35,1,1,1 |
db '/rd/1/icons/fs.ico',0 |
rb 12 |
db '/rd/1/kfar',0 |
rb 20 |
db 'KFAR ' |
icon_default: |
db 'AA-/rd/1/icons/fs.ico -/rd/1/kfar -KFAR *',13,10 |
icon_data: ; data length 76+2 |
rb 4096 |
I_Param: |
I_END: |
/programs/system/icon_new/trunk/icons/board.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/icon_new/trunk/icons/bug.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/icon_new/trunk/icons/calc.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/icon_new/trunk/icons/fasm.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/icon_new/trunk/icons/floppy.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/icon_new/trunk/icons/fs.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/icon_new/trunk/icons/vrr.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/icon_new/trunk/icons/write.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/icon_new/trunk/icons.dat |
---|
0,0 → 1,8 |
AA-/rd/1/icons/FS.ICO -/rd/1/KFAR -FAR * |
BA-/rd/1/icons/FASM.ICO -/rd/1/develop/FASM -Fasm * |
CA-/rd/1/icons/WRITE.ICO -/rd/1/TINYPAD -Tinypad * |
AB-/rd/1/icons/FLOPPY.ICO -/rd/1/RDSAVE -RDsave * |
BB-/rd/1/icons/CALC.ICO -/rd/1/CALC -Calc * |
HA-/rd/1/icons/BUG.ICO -/rd/1/develop/MTDBG -Debuger * |
IA-/rd/1/icons/BOARD.ICO -/rd/1/develop/BOARD -Board * |
JA-/rd/1/icons/VRR.ICO -/rd/1/VRR -VRR * |
/programs/system/icon_new/trunk/readme.txt |
---|
0,0 → 1,3 |
«ï ¨á¯®«ì§®¢ ¨ï í⮩ ¢¥àᨨ ICON ¥®¡å®¤¨¬® § ¬¥¨âì icons.dat ¢ ®¡à §¥, § ª¨ãâì â㤠¢áî ¯ ¯ªã icons, |
᪮¬¯¨«¨à®¢ ë¥ @icon ¨ iconmngr, ¯®¯à ¢¨âì autorun.dat (ICON § ¬¥¨âì ICONMNGR), ¯¥à¥ª®¬¯¨«¨à®¢ âì @RB, |
§ ¬¥¨¢ ¢ ¨á室¨ª¥ ICON ICONMNGR. த¥ ¢á¥ :) ®à¬ â ¨ª®®ª *.ico - 48X48X32 bit (¯à®§à ç®áâì ¯®¤¤¥à¦¨¢ ¥âáï) |
/programs/system/kbd/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
/programs/system/kbd/trunk/kbd.ASM |
---|
6,7 → 6,7 |
; |
; |
include 'macros.inc' |
include '..\..\..\macros.inc' |
memsize = 1000h |
org 0 |
18,7 → 18,7 |
use32 ; ¢ª«îç¨âì 32-¡¨âë© à¥¦¨¬ áᥬ¡«¥à |
db 'MENUET01' ; 8 byte id |
dd 0x01 ; header version |
dd 0x01 ; title version |
dd START ; start of code |
dd I_END ; size of image |
dd memsize ; memory for app |
43,11 → 43,11 |
mov ebx,3 |
mov ecx,sc |
mov edx,sizeof.system_colors |
int 0x40 |
mcall |
mov eax, 12 |
mov ebx, 1 ; start redraw |
int 0x40 |
mcall |
mov eax, 0 ; window |
mov ebx, 100 shl 16 + 300 |
54,8 → 54,8 |
mov ecx, 100 shl 16 + 90 |
mov edx, [sc.work] |
or edx, 0x13000000 |
mov edi, header |
int 0x40 |
mov edi, title |
mcall |
mov eax, 4 |
mov ebx, 17 shl 16 + 30 |
62,30 → 62,30 |
mov ecx, [sc.work_text] |
mov edx, msg_nb |
mov esi, 14 |
int 0x40 |
mcall |
mov ebx, 105 shl 16 + 30 |
mov edx, [nb_name] |
movzx esi, byte[edx] |
inc edx |
int 0x40 |
mcall |
mov ebx, 17 shl 16 + 40 |
mov edx, msg_stat |
mov esi, 8 |
int 0x40 |
mcall |
mov ebx, 102 shl 16 + 50 |
mov edx, msg_divs |
mov esi, 32 |
int 0x40 |
mcall |
mov ebx, 17 shl 16 + 62 |
mov edx, msg_hdd |
mov esi, 10 |
int 0x40 |
mcall |
mov ebx, 17 shl 16 + 72 |
mov edx, msg_sgd |
int 0x40 |
mcall |
call get_divs |
mov eax, 47 |
96,7 → 96,7 |
mov ecx, edx |
mov edx, 80 shl 16 + 62 |
mov esi, [sc.work_text] |
int 0x40 |
mcall |
mov ecx, [val_sgd] |
mov edx, 8 |
103,7 → 103,7 |
shl edx, cl |
mov ecx, edx |
mov edx, 80 shl 16 + 72 |
int 0x40 |
mcall |
call get_bd_stat |
119,7 → 119,7 |
jz @f |
mov edx, msg_en |
@@: mov eax, 4 |
int 0x40 |
mcall |
; ®§¤ ñ¬ ª®¯ªã |
mov ecx, 27 shl 16 + 20 |
127,7 → 127,7 |
mov ebx, 220 shl 16 + 70 |
mov esi, [sc.work_button] |
mov edx, 2 |
int 0x40 |
mcall |
; ¥éñ 14 ;) |
mov edi, 7 |
136,7 → 136,7 |
mov ebx, 105 shl 16 + 25 |
mov edx, 3 |
@@: int 0x40 |
@@: mcall |
inc edx |
add ebx, 27 shl 16 |
dec edi |
145,7 → 145,7 |
add ecx, 12 shl 16 |
mov ebx, 105 shl 16 + 25 |
mov edi, 7 |
@@: int 0x40 |
@@: mcall |
inc edx |
add ebx, 27 shl 16 |
dec edi |
153,21 → 153,21 |
end_dr: mov eax, 12 |
mov ebx, 2 ; end redraw |
int 0x40 |
mcall |
; Wait for event ... |
mov eax, 10 |
int 0x40 |
mcall |
cmp al, 3 |
jne not_bt |
mov eax, 17 ; get id |
int 0x40 |
mcall |
cmp ah, 1 |
jne no_exit |
mov eax, -1 ; close this program |
int 0x40 |
mcall |
no_exit: |
cmp ah, 2 |
jne no_ch_bt |
200,7 → 200,7 |
not_bt: cmp al, 2 |
jne drawwindow |
mov eax, 2 ; ¯®ª ª« ¢ ¥ ¯®¤¤¥à¦¨¢ ¥âáï - ç¨â ¥¬ ¨ § ¡ë¢ ¥¬ |
int 0x40 |
mcall |
jmp drawwindow |
;-------------------------------------------------------------------------- |
bus_num: db 2 ; ®¬¥à è¨ë |
354,7 → 354,7 |
nbus: mov bh, [bus_num] |
ndevfn: mov ch, [devfn] |
mov eax, 62 |
int 0x40 |
mcall |
cmp eax, 0xffffffff |
je bd_next |
;--------- |
398,7 → 398,7 |
mov ch, [devfn] |
mov cl, al |
mov eax, 62 |
int 0x40 |
mcall |
pop edx |
and al, dh |
jnz @f |
426,7 → 426,7 |
mov ch, [devfn] |
mov cl, al |
mov eax, 62 |
int 0x40 |
mcall |
mov bl, 8 |
test edi, edi |
jz @f |
433,13 → 433,13 |
or al, dl |
mov dl, al |
mov eax, 62 |
int 0x40 |
mcall |
jmp bd_ss_nxt |
@@: not dl |
and al, dl |
mov dl, al |
mov eax, 62 |
int 0x40 |
mcall |
jmp bd_ss_nxt |
bd_ss_end: |
ret |
452,22 → 452,22 |
mov ch, [devfn] |
mov cl, 0x6f |
mov eax, 62 |
int 0x40 |
mcall |
and al, 0x1F |
mov dl, al |
mov bl, 8 |
mov eax, 62 |
int 0x40 |
mcall |
pop eax |
test eax, eax |
jz @f |
or dl, 0x10 |
mov eax, 62 |
int 0x40 |
mcall |
ret |
@@: and dl, 0xef |
mov eax, 62 |
int 0x40 |
mcall |
ret |
;-------------------------------------------------------------------------- |
; x8 x16 x32 x64 x128 x256 x512 |
491,7 → 491,7 |
mov eax, 68 |
mov ebx, 3 |
mov edx, 0xC001001b |
int 0x40 |
mcall |
mov al, [div_hdd + esi] |
mov ah, [div_sgd + edi] |
and eax, 0xFFFBFFFF |
502,7 → 502,7 |
mov esi, ebx |
mov eax, 68 |
mov ebx, 4 |
int 0x40 |
mcall |
ret |
get_divs: |
511,7 → 511,7 |
mov eax, 68 |
mov ebx, 3 |
mov edx, 0xC001001b |
int 0x40 |
mcall |
mov ecx, 7 |
@@: cmp [div_hdd + ecx - 1], al |
je @f |
549,7 → 549,7 |
;-------------------------------------------------------------------------- |
header db appname,version,0 |
title db appname,version,0 |
msg_divs db ' x8 x16 x32 x64 x128 x256 x512' |
msg_hdd db 'Hatl Disc.' |
/programs/system/launcher/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/launcher/trunk/build_en.bat |
---|
1,4 → 1,5 |
@erase lang.inc |
@echo lang fix en >lang.inc |
@fasm launcher.asm launcher |
@erase lang.inc |
@pause |
/programs/system/launcher/trunk/build_ru.bat |
---|
1,4 → 1,5 |
@erase lang.inc |
@echo lang fix ru >lang.inc |
@fasm launcher.asm launcher |
@erase lang.inc |
@pause |
/programs/system/launcher/trunk/launcher.asm |
---|
6,7 → 6,7 |
; |
; ®¬¯¨«¨àã©â¥ á ¯®¬®éìî FASM 1.52 ¨ ¢ëè¥ |
; |
include "MACROS.INC" |
include "..\..\..\MACROS.INC" |
use32 |
org 0x0 |
24,13 → 24,13 |
; mov eax, 5 |
; mov ebx, 10 |
; int 0x40 |
; mcall |
mcall 18,15 |
mov eax, 70 ; load AUTORUN.DAT |
mov ebx, autorun_dat_info |
int 0x40 |
mcall |
call get_number |
mov [number_of_files], eax |
54,7 → 54,7 |
exit: |
or eax, -1 |
int 0x40 |
mcall |
run_program: ; time to delay in eax |
63,7 → 63,7 |
pop ebx |
mov eax, 5 |
int 0x40 |
mcall |
ret |
/programs/system/menu/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/menu/trunk/readme2.txt |
---|
File deleted |
/programs/system/menu/trunk/build_en.bat |
---|
1,4 → 1,5 |
@erase lang.inc |
@echo lang fix en >lang.inc |
@fasm menu.asm @menu |
@erase lang.inc |
@pause |
/programs/system/menu/trunk/build_ru.bat |
---|
1,4 → 1,5 |
@erase lang.inc |
@echo lang fix ru >lang.inc |
@fasm menu.asm @menu |
@erase lang.inc |
@pause |
/programs/system/menu/trunk/menu.asm |
---|
5,7 → 5,7 |
; Compile with FASM for Menuet |
;****************************************************************************** |
include "lang.inc" |
include "macros.inc" |
include "..\..\..\macros.inc" |
BTN_HEIGHT = 22 |
TXT_Y = (BTN_HEIGHT)/2-5 |
27,11 → 27,11 |
mov ebx, 3 |
mov ecx, sc |
mov edx, sizeof.system_colors |
int 0x40 |
mcall |
mov eax, 70 ; load MENU.DAT |
mov ebx, fileinfo |
int 0x40 |
mcall |
test eax, eax ; error ? |
jz @f |
cmp eax,6 |
89,7 → 89,7 |
jmp newprocess |
search_end1: |
mov eax, 14 |
int 0x40 |
mcall |
sub ax, 20 |
mov [menu_data + y_end], ax |
mov [menu_data + x_start], 5 |
106,7 → 106,7 |
mov eax, 40 ; set event mask |
mov ebx, 100111b ; mouse + button + key + redraw |
int 0x40 |
mcall |
call draw_window |
113,7 → 113,7 |
still: |
mov eax, 23 ; wait here for event |
mov ebx, 5 |
int 0x40 |
mcall |
test [close_now], 1 ; is close flag set? |
jnz close |
147,7 → 147,7 |
key: |
; mov eax, 2 |
int 0x40 |
mcall |
mov al, [edi + rows] ; number of buttons |
189,7 → 189,7 |
button: ; BUTTON HANDLER |
mov eax, 17 ; get id |
int 0x40 |
mcall |
button1: |
mov esi, edi |
238,7 → 238,7 |
mov byte [edi], 0 ; store terminator |
mov eax, 70 ; start program |
mov ebx, fileinfo_start |
int 0x40 |
mcall |
; mcall 5,100 |
or [close_now], 1 ; set close flag |
pop edi |
306,7 → 306,7 |
mov ebx, 1 |
mov ecx, thread |
mov edx, [thread_stack] |
int 0x40 |
mcall |
jmp searchexit |
314,12 → 314,12 |
mouse: ; MOUSE EVENT HANDLER |
mov eax, 37 |
mov ebx, 2 |
int 0x40 |
mcall |
test eax, eax ; check buttons state |
jnz click |
mov eax, 37 |
mov ebx, 1 |
int 0x40 |
mcall |
ror eax, 16 ; eax = [ Y | X ] relative to window |
cmp ax, 140 ; pointer in window? |
ja noinwindow |
363,7 → 363,7 |
close: |
or eax, -1 ; close this thread |
mov [edi + child], al ; my child is not mine |
int 0x40 |
mcall |
backconvert: ; convert from pointer to process id |
409,7 → 409,7 |
mov eax, 12 ; function 12:tell os about windowdraw |
mov ebx, 1 ; 1, start of draw |
int 0x40 |
mcall |
movzx ebx, [edi + rows] |
imul eax, ebx, BTN_HEIGHT ; eax = height of window |
424,13 → 424,13 |
xor eax, eax ; function 0 : define and draw window |
mov edx, 0x01000000 ; color of work area RRGGBB,8->color gl |
mov esi, edx ; unmovable window |
int 0x40 |
mcall |
call draw_all_buttons |
mov eax,12 |
mov ebx,2 |
int 0x40 |
mcall |
ret |
479,7 → 479,7 |
add esi, 0x1a1a1a |
.nohighlight: |
or edx, 0x20000000 |
int 0x40 |
mcall |
movzx edx, dl |
dec dl |
504,7 → 504,7 |
mov ecx, [sc.work_text] |
mov eax, 4 |
mov esi, 21 |
int 0x40 |
mcall |
pop edx;ad |
ret |
/programs/system/menu/trunk/readme.txt |
---|
47,6 → 47,8 |
Ñ óâàæåíèåì, |
Ìèõàèë Ëèñîâèí |
11.07.06 - Mario79, ïðèëîæåíèå èñïîëüçóåò ôóíêöèþ 70. |
NEW MAIN MENU |
Requirements: MENUET 0.76, color monitor |
WHAT'S NEW? |
70,4 → 72,6 |
It is recommended to compile MMENU.ASM as MENU. So, you can run it from |
standard panel. |
All the comments and bugreports send to lisovin@26.ru |
Michail Lisovin. |
Michail Lisovin. |
11.07.06 - Mario79, application used function 70. |
/programs/system/mgb/trunk/mgb.asm |
---|
35,7 → 35,7 |
dd 0 |
dd 0 |
include 'macros.inc' |
include '..\..\..\macros.inc' |
;__CPU_type equ p6 ; charge it |
include 'proc32.inc' |
/programs/system/panel/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/panel/trunk/@PANEL.ASM |
---|
15,7 → 15,7 |
dd 0x0,0x0 ; param, icon |
include 'lang.inc' |
include 'macros.inc' |
include '..\..\..\macros.inc' |
width dd 305 |
buttons dd 1 ; 0 no frames ; 1 frames |
/programs/system/panel/trunk/build_en.bat |
---|
1,4 → 1,5 |
@erase lang.inc |
@echo lang fix en >lang.inc |
@fasm @panel.asm @panel |
@erase lang.inc |
@pause |
/programs/system/panel/trunk/build_ru.bat |
---|
1,4 → 1,5 |
@erase lang.inc |
@echo lang fix ru >lang.inc |
@fasm @panel.asm @panel |
@erase lang.inc |
@pause |
/programs/system/pcidev/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
/programs/system/pcidev/trunk/PCIDEV.ASM |
---|
136,7 → 136,7 |
; * detect Revision, Class and Subclass of Device, |
; * and make Description based on Class |
;------------------------------------------------------------- |
include 'macros.inc' |
include '..\..\..\macros.inc' |
MEOS_APP_START |
CODE |
call draw_window |
152,13 → 152,13 |
red: ; redraw |
mcall 9, Proc_Info, -1 ; window redraw requested so get new window coordinates and size |
mov eax, [Proc_Info.x_start]; store the window coordinates into the Form Structure |
mov eax, [Proc_Info.box.left]; store the window coordinates into the Form Structure |
mov [Form + 2], ax ; x start position |
mov eax, [Proc_Info.y_start]; |
mov eax, [Proc_Info.box.top]; |
mov [Form + 6], ax ; ystart position |
mov eax, [Proc_Info.x_size] ; |
mov eax, [Proc_Info.box.width] ; |
mov [Form], ax ; window width |
mov eax, [Proc_Info.y_size] ; |
mov eax, [Proc_Info.box.height] ; |
mov [Form + 4] ,ax ; window height |
call draw_window ; go redraw window now |
jmp still |
/programs/system/rb/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/rb/trunk/@RB.ASM |
---|
8,23 → 8,29 |
; Compile with flat assembler |
; |
include 'lang.inc' |
include 'macros.inc' |
include '..\..\..\macros.inc' |
meos_app_start |
code |
mov eax, 48 ; ¯®«ãç¨âì á¨áâ¥¬ë¥ æ¢¥â |
mov ebx, 3 |
mov ecx, sc ; ¤à¥á áâàãªâãàë |
mov edx, sizeof.system_colors ; ¨ ¥¥ à §¬¥à |
mcall |
mov eax,40 ; ãáâ ®¢¨¬ ¬ áªã ᮡë⨩ |
mov ebx,100000b ; á ¨â¥à¥áã¥â ⮫쪮 ¬ëèì |
int 0x40 |
mcall |
still: ; £« ¢ë© 横« ®á®¢®£® ¯à®æ¥áá |
mov eax,10 ; ¦¤ñ¬ ᮡëâ¨ï |
int 0x40 |
mcall |
mov eax,37 ; ª ª¨¥ ¦ âë ª¯®¯ª¨? |
mov ebx,2 |
int 0x40 |
mcall |
cmp eax,2 ; ¥á«¨ ¥ ¯à ¢ ï, ¢®§¢à â |
jne still |
33,7 → 39,7 |
; mov eax,37 ; íâ® ¤«ï ®â« ¤ª¨ - ¥á«¨ ¬ëèì ¢ â®çª¥ (0;0), § ªà®¥¬áï |
; xor ebx,ebx |
; int 0x40 |
; mcall |
; test eax,eax ; ªãàá®à ¢ â®çª¥ (0;0), â.¥. eax = 0 |
; je exit |
41,7 → 47,7 |
mov eax,9 ; ¯®«ã稬 ç¨á«® ¯à®æ¥áᮢ ¢ á¨á⥬¥ |
mov ebx,procinfo |
xor ecx,ecx |
int 0x40 |
mcall |
inc eax ; ⥯¥àì ¢ eax ᮤ¥à¦¨âáï ç¨á«® ¯à®æ¥áᮢ + 1 |
mov [processes],eax |
51,10 → 57,10 |
pushad |
mov eax,9 ; ¯®«ã稬 ¨ä®à¬ æ¨î ® ¯à®æ¥áá¥; ®¬¥à - ¢ ecx |
mov ebx,procinfo |
int 0x40 |
mcall |
mov eax,37 ; ª®®à¤¨ âë ªãàá®à |
xor ebx,ebx |
int 0x40 |
mcall |
mov ebx,eax ; eax = cursor_x |
shr eax,16 ; ebx = cursor_y |
and ebx,0xffff |
65,12 → 71,12 |
test [procinfo.wnd_state], 2 |
jnz ne_goden |
; \end{diamond}[18.09.2006] |
mov eax,[procinfo.x_start] ; eax = wnd_x_start |
mov ebx,[procinfo.y_start] ; ebx = wnd_y_start |
mov eax,[procinfo.box.left] ; eax = wnd_x_start |
mov ebx,[procinfo.box.top] ; ebx = wnd_y_start |
mov ecx,[procinfo.x_size] |
mov ecx,[procinfo.box.width] |
add ecx,eax ; ecx = wnd_x_end |
mov edx,[procinfo.y_size] |
mov edx,[procinfo.box.height] |
add edx,ebx ; ecx = wnd_y_end |
cmp eax,[curx1] ; wnd_x_start > cursor_x => ªãàá®à «¥¢¥¥ ®ª |
96,13 → 102,13 |
@@: ; ¯®¤®¦¤ñ¬, ¯®ª ¯®«ì§®¢ â¥«ì ¥ ®â¯ãá⨫ ¯à ¢ãî ª®¯ªã ¬ëè¨ |
mov eax,37 |
mov ebx,2 ; äãªæ¨ï 37-2: |
int 0x40 ; ¦ âë «¨ ª®¯ª¨ ¬ëè¨? |
mcall ; ¦ âë «¨ ª®¯ª¨ ¬ëè¨? |
cmp eax,ebx ; ¥á«¨ ®â¯ãá⨫, (eax != 2) |
jnz @f ; ¨¤ñ¬ ¢ ç «® £« ¢®£® 横« |
mov eax,5 ; ¨ ç¥ |
mov ebx,2 ; ¯®¤®¦¤ñ¬ 2 ¬á |
int 0x40 |
mcall |
jmp @b ; ¨ ¯à®¢¥à¨¬ ¬ëèì ®¯ïâì |
@@: |
113,7 → 119,7 |
je @f |
mov eax,5 |
mov ebx,3 ; ¦¤ñ¬ 3 ¬á |
int 0x40 |
mcall |
jmp @b |
@@: |
121,7 → 127,7 |
mov ebx,1 ; ᮧ¤ ñ¬ ¯®â®ª (thread) |
mov ecx,start_wnd ; â®çª ¢å®¤ ¯®â®ª |
mov edx,stack_wnd ; ¢¥àè¨ áâíª ¤«ï ¯®â®ª |
int 0x40 |
mcall |
jmp still |
131,7 → 137,7 |
mov [menu_opened],0 |
exit: ; áî¤ ¬ë ¨¤ñ¬, ª®£¤ ¢ë室¨¬ ¨§ ®á®¢®£® ¯à®æ¥áá |
or eax,-1 ; eax = -1 |
int 0x40 |
mcall |
141,7 → 147,7 |
mov [menu_opened],1 |
mov eax,40 ; ãáâ ®¢¨¬ ¬ áªã ¦¥« ¥¬ëå ᮡë⨩ ¤«ï í⮣® ¯à®æ¥áá |
mov ebx,100101b ; ¬¥î + ª®¯ª¨ + ¯¥à¥à¨á®¢ª |
int 0x40 |
mcall |
red: |
call draw_window |
149,7 → 155,7 |
still2: ; £« ¢ë© 横« ¯à®æ¥áá ¬¥î |
mov eax,10 ; ¦¤ñ¬ ᮡëâ¨ï |
int 0x40 |
mcall |
cmp eax,1 ; ¯¥à¥à¨á®¢ª ? |
je red |
165,7 → 171,7 |
mouse: ; ª®£¤ ¯®«ì§®¢ â¥«ì ¦¬ñâ ª®¯ªã ¬ëè¨, § ªà®¥¬áï |
mov eax,37 |
mov ebx,2 ; ª ª¨¥ ª®¯ª¨ ¦ âë? |
int 0x40 |
mcall |
test eax,eax ; ¨ª ª¨¥? - ⮣¤ ¯à¥ªà á®! ¢¥àñ¬áï ¢ £« ë© æ¨ª« |
jz still2 |
jmp exit_menu ; ¥á«¨ ¢áñ-â ª¨ ¦ âë - § ªà®¥¬ ®ª® |
174,7 → 180,7 |
; |
button: |
mov eax,17 ; ¯®«ãç¨âì ¨¤¥â¨ä¨ª â®à ¦ ⮩ ª®¯ª¨ |
int 0x40 |
mcall |
sub ah,10 ; áà ¢¨¢ ¥¬ á 10 |
jl nofuncbtns ; ¥á«¨ ¬¥ìè¥ - § ªàë¢ ¥¬ ¬¥î |
192,7 → 198,7 |
; mov eax,5 ; ¯®¤®¦¤ñ¬, ¯®ª ¯à®£à ¬¬ § ¯ãáâ¨âìáï |
; mov ebx,1 ; â® ¥ñ ®ª® ¥ ¡ã¤¥â ®âà¨á®¢ ® (¡ £ ¢ ï¤à¥???) |
; int 0x40 ; à ᪮¬¬¥â¨àã©â¥ í⨠áâப¨, ¥á«¨ ã ¢ á ¯à®¡«¥¬ë |
; mcall ; à ᪮¬¬¥â¨àã©â¥ í⨠áâப¨, ¥á«¨ ã ¢ á ¯à®¡«¥¬ë |
; á ®âà¨á®¢ª®© |
nofuncbtns: ; § ªàë¢ ¥¬ ¬¥î |
200,18 → 206,18 |
_BTNS_ = 7 ; ª®«¨ç¥á⢮ ª®¯®ª ("¯ãªâ®¢ ¬¥î") |
_BTNS_ = 6 ; ª®«¨ç¥á⢮ ª®¯®ª ("¯ãªâ®¢ ¬¥î") |
if lang eq ru |
font = 0x00000000 |
string_length = 20 ; ¤«¨ áâப¨ |
wnd_x_size = 133 ; è¨à¨ ®ª |
header_pos = 36 shl 16 + 7 |
title_pos = 36 shl 16 + 7 |
else |
font = 0x10000000 |
string_length = 12 ; ¤«¨ áâப¨ |
wnd_x_size = 105 ; è¨à¨ ®ª |
header_pos = 23 shl 16 + 7 |
title_pos = 23 shl 16 + 7 |
end if |
;******************************* |
222,7 → 228,7 |
mov eax,12 ; ç¨ ¥¬ "à¨á®¢ âì" |
mov ebx,1 |
int 0x40 |
mcall |
mov eax,[curx1] ; ⥪ã騥 ª®®à¤¨ âë ªãàá®à |
mov [curx],eax ; § ¯¨è¥¬ ¢ ª®®à¤¨ âë ®ª |
231,7 → 237,7 |
; ⥯¥àì ¡ã¤¥¬ áç¨â âì ª®®à¤¨ âë ®ª , çâ®¡ë ®® § ªà © íªà ¥ ¢ë«¥§«® |
mov eax,14 ; ¯®«ã稬 à §¬¥à íªà |
int 0x40 |
mcall |
mov ebx,eax |
shr eax,16 ; ¢ eax - x_screen |
and ebx,0xffff ; ¢ ebx - y_screen |
248,12 → 254,6 |
add [cury], -_BTNS_*15-21 |
.oky: |
mov eax, 48 ; ¯®«ãç¨âì á¨áâ¥¬ë¥ æ¢¥â |
mov ebx, 3 |
mov ecx, sc ; ¤à¥á áâàãªâãàë |
mov edx, sizeof.system_colors ; ¨ ¥¥ à §¬¥à |
int 0x40 |
xor eax, eax ; äãªæ¨ï 0 - ᮧ¤ âì ®ª® |
mov ebx, [curx] ; ebx = [ª®®à¤¨ â ¯® x] shl 16 + [è¨à¨ ] |
shl ebx, 16 |
265,10 → 265,10 |
mov esi, [sc.grab] ; 梥⠧ £®«®¢ª |
or esi, 0x81000000 |
mov edi, [sc.frame] ; 梥â à ¬ª¨ |
int 0x40 |
mcall |
mov eax, 4 ; § £®«®¢®ª |
mov ebx, header_pos ; [x] shl 16 + [y] |
mov ebx, title_pos ; [x] shl 16 + [y] |
mov ecx, [sc.grab_text]; èà¨äâ ¨ 梥â (á¥àë©) |
or ecx, 0x10000000 |
; add ecx, -0x333333 |
283,12 → 283,12 |
inc edx |
jnp .dec_color |
pop ecx |
mov edx, header ; ¤à¥á § £®«®¢ª |
mov esi, header.size ; ¤«¨ § £®«®¢ª ("M E N U") |
int 0x40 |
mov edx, title ; ¤à¥á § £®«®¢ª |
mov esi, title.size ; ¤«¨ § £®«®¢ª ("M E N U") |
mcall |
pop ecx |
add ebx, 1 shl 16 ; ᤢ¨¥¬ ¢¯à ¢® 1 |
int 0x40 |
mcall |
mov ebx, 1*65536+wnd_x_size-2 ; ç¨ ¥¬ ¤¥« âì ª®¯ª¨ |
mov ecx, 20*65536+15 |
298,7 → 298,7 |
newbtn: ; ç «® 横« |
mov eax,8 ; ᮧ¤ ñ¬ ª®¯ªã |
int 0x40 |
mcall |
; ¯¨è¥¬ ⥪áâ ª®¯ª¥ |
pushad ; á¯ á ¥¬ ॣ¨áâàë |
313,7 → 313,7 |
add edx, text ; edx += text; ⥯¥àì ¢ edx ¤à¥á áâப¨ |
mov esi, string_length ; ¢ esi - ¤«¨ áâப¨ |
mov eax, 4 ; äãªæ¨ï 4 - ¢ë¢®¤ ⥪áâ |
int 0x40 |
mcall |
popad |
inc edx ; ®¬¥à ª®¯ª¨++; |
323,7 → 323,7 |
mov eax,12 ; § ª®ç¨«¨ "à¨á®¢ âì" |
mov ebx,2 |
int 0x40 |
mcall |
ret ; ¢®§¢à â |
345,7 → 345,6 |
strtbl startapps ,\ |
<"/RD/1/PIC4",0> ,\ |
<"/RD/1/SKINSEL",0> ,\ |
<"/RD/1/DESKTOP",0> ,\ |
<"/RD/1/ICON",0> ,\ |
<"/RD/1/SETUP",0> ,\ |
352,11 → 351,10 |
<"/RD/1/VRR",0> ,\ |
<"/RD/1/CPU",0> |
sz header, "KolibriOS" |
sz title, "KolibriOS" |
lsz text,\ |
en, 'Background ',\ |
en, 'Change skin ',\ |
en, 'Desktop ',\ |
en, 'Icon manager',\ |
en, 'Device setup',\ |
364,7 → 362,6 |
en, 'Processes ',\ |
\ |
ru, '¥¥à â®à ®¡®¥¢ ',\ |
ru, '¬¥ ᪨ ',\ |
ru, ' áâனª ®ª® ',\ |
ru, '¯à ¢«¥¨¥ ¨ª®ª ¬¨ ',\ |
ru, ' áâனª ãáâனá⢠',\ |
/programs/system/rdsave/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
/programs/system/rdsave/trunk/rdsave.asm |
---|
8,7 → 8,7 |
; |
;--------------------------------------------------------------------- |
include 'lang.inc' |
include 'macros.inc' |
include '..\..\..\macros.inc' |
appname equ 'RDsave ' |
version equ '1.2' |
20,13 → 20,13 |
dd 0x01 ; ¢¥àá¨ï § £®«®¢ª (¢á¥£¤ 1) |
dd START ; ¤à¥á ¯¥à¢®© ª®¬ ¤ë |
dd I_END ; à §¬¥à ¯à®£à ¬¬ë |
dd 0x1000 ; ª®«¨ç¥á⢮ ¯ ¬ï⨠|
dd 0x1000 ; ¤à¥á ¢¥àè¨ë áâíª |
dd 0x2000 ; ª®«¨ç¥á⢮ ¯ ¬ï⨠|
dd 0x2000 ; ¤à¥á ¢¥àè¨ë áâíª |
dd 0x0 ; ¤à¥á ¡ãä¥à ¤«ï ¯ à ¬¥â஢ (¥ ¨á¯®«ì§ã¥âáï) |
dd 0x0 ; § १¥à¢¨à®¢ ® |
include '..\..\..\develop\examples\editbox\trunk\editbox.inc' |
use_edit_box |
use_edit_box structure_of_potock,22,5 |
;--------------------------------------------------------------------- |
;--- ---------------------------------------------- |
35,7 → 35,7 |
START: |
mov eax, 40 |
mov ebx, 100111b |
int 0x40 |
mcall |
red: ; ¯¥à¥à¨á®¢ âì ®ª® |
call draw_window ; ¢ë§ë¢ ¥¬ ¯à®æ¥¤ãàã ®âà¨á®¢ª¨ ®ª |
46,7 → 46,7 |
still: |
push 10 |
pop eax |
int 40h |
mcall |
dec eax ; ¯¥à¥à¨á®¢ âì ®ª®? |
jz red ; ¥á«¨ ¤ - ¬¥âªã red |
61,12 → 61,12 |
button: |
mov al,17 ; ¯®«ãç¨âì ¨¤¥â¨ä¨ª â®à ¦ ⮩ ª®¯ª¨ |
int 0x40 |
mcall |
cmp ah,1 ; ª®¯ª á id=1("§ ªàëâì")? |
jne noclose |
or eax,-1 ; äãªæ¨ï -1: § ¢¥àè¨âì ¯à®£à ¬¬ã |
int 0x40 |
mcall |
noclose: |
cmp ah,2 |
74,7 → 74,7 |
call clear_err |
mov al,16 |
mov ebx,1 |
int 0x40 |
mcall |
call check_for_error |
jmp still |
path_2: |
83,7 → 83,7 |
call clear_err |
mov al,16 |
mov ebx,2 |
int 0x40 |
mcall |
call check_for_error |
jmp still |
path_3: |
93,7 → 93,7 |
mov al,18 |
mov ebx,6 |
mov ecx,path3 |
int 0x40 |
mcall |
call check_for_error |
jmp still |
path_4: |
101,13 → 101,13 |
mov eax,18 |
mov ebx,6 |
mov ecx,path4 |
int 0x40 |
mcall |
call check_for_error |
jmp still |
key: |
mov al,2 |
int 0x40 |
mcall |
key_edit_boxes editbox,editbox_end |
jmp still |
163,7 → 163,7 |
mov eax,4 ; ¤¯¨á¨ |
mov ebx,20 shl 16 + 148 |
or ecx,0x80000000 |
int 0x40 |
mcall |
ret |
clear_err: |
171,7 → 171,7 |
mov ebx,15 shl 16 + 240 |
mov ecx,145 shl 16 +15 |
mov edx,[sc.work] |
int 0x40 |
mcall |
ret |
;--------------------------------------------------------------------- |
184,11 → 184,11 |
mov ebx,3 |
mov ecx,sc |
mov edx,sizeof.system_colors |
int 0x40 |
mcall |
mov eax,12 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
mov bl,1 ; 1 - ç¨ ¥¬ à¨á®¢ âì |
int 0x40 |
mcall |
; ð |
xor eax,eax ; äãªæ¨ï 0 : ®¯à¥¤¥«¨âì ¨ ®âà¨á®¢ âì ®ª® |
196,25 → 196,25 |
mov ecx,200 shl 16 + 190 ; [y áâ àâ] *65536 + [y à §¬¥à] |
mov edx,[sc.work] ; 梥â à ¡®ç¥© ®¡« á⨠RRGGBB,8->color gl |
or edx,0x33000000 |
mov edi,header ; |
int 0x40 |
mov edi,title ; |
mcall |
draw_edit_boxes editbox,editbox_end ;à¨á®¢ ¨¥ edit box'®¢ |
draw_edit_boxes editbox,editbox_end,use_f9,structure_of_potock ;à¨á®¢ ¨¥ edit box'®¢ |
mov al,13 ;®âà¨á®¢ª ⥥© ª®¯®ª |
mov ebx,194 shl 16 + 60 |
mov ecx,34 shl 16 +15 |
mov edx,0x444444 |
int 0x40 |
mcall |
add ecx,20 shl 16 |
int 0x40 |
mcall |
add ecx,20 shl 16 |
int 0x40 |
mcall |
add ecx,40 shl 16 |
int 0x40 |
mcall |
mov eax,8 ;®âà¨á®¢ª ª®¯®ª |
sub ebx,4 shl 16 |
221,19 → 221,19 |
sub ecx,4 shl 16 |
mov edx,5 |
mov esi,[sc.work_button] |
int 0x40 |
mcall |
sub ecx,40 shl 16 |
dec edx |
int 0x40 |
mcall |
sub ecx,20 shl 16 |
dec edx |
int 0x40 |
mcall |
sub ecx,20 shl 16 |
dec edx |
int 0x40 |
mcall |
mov al,4 ; ¤¯¨á¨ |
mov ebx,45 shl 16 + 12 |
240,46 → 240,46 |
mov ecx,[sc.work_text] |
or ecx,0x80000000 |
mov edx,label1 |
int 0x40 |
mcall |
mov ebx,150 shl 16 + 35 |
mov edx,path1 |
int 0x40 |
mcall |
add ebx,20 |
mov edx,path2 |
int 0x40 |
mcall |
mov ebx,75 shl 16 + 75 |
mov edx,path3 |
int 0x40 |
mcall |
mov ebx,30 shl 16 + 97 |
mov edx,label2 |
int 0x40 |
mcall |
mov ebx,40 shl 16 + 135 |
mov edx,label3 |
int 0x40 |
mcall |
mov ecx,[sc.work_button_text] |
or ecx,0x80000000 |
mov ebx,195 shl 16 + 35 |
mov edx,save |
int 0x40 |
mcall |
add ebx,20 |
int 0x40 |
mcall |
add ebx,20 |
int 0x40 |
mcall |
add ebx,40 |
int 0x40 |
mcall |
mov al,12 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
mov ebx,2 ; 2, § ª®ç¨«¨ à¨á®¢ âì |
int 0x40 |
mcall |
ret ; ¢ë室¨¬ ¨§ ¯à®æ¥¤ãàë |
288,18 → 288,12 |
;--- ---------------------------------------------- |
;--------------------------------------------------------------------- |
header db appname,version,0 |
title db appname,version,0 |
editbox: |
edit1 edit_box 170,10,113,0xffffff,0,0,0,512,path4,ed_focus,26 |
edit1 edit_box 170,10,113,0xffffff,0xaabbcc,0,0,0,512,path4,ed_focus,26,26 |
editbox_end: |
path1 db '/fd/1/',0 |
path2 db '/fd/2/',0 |
path3 db '/hd0/1/kolibri.img',0 |
path4 db '/hd0/1/kolibri/kolibri.img',0 ;¤«ï १¥à¢®£® á®åà ¥¨ï |
rb 513 |
if lang eq ru |
save db '®åà ¨âì',0 |
label1 db 'ë¡¥à¨â¥ ®¤¨ ¨§ ¢ ਠ⮢:',0 |
329,10 → 323,20 |
end if |
mouse_flag: dd 0x0 |
path1 db '/fd/1/',0 |
path2 db '/fd/2/',0 |
path3 db '/hd0/1/kolibri.img',0 |
path4 db '/hd0/1/kolibri/kolibri.img',0 ;¤«ï १¥à¢®£® á®åà ¥¨ï |
;--------------------------------------------------------------------- |
I_END: ; ¬¥âª ª®æ ¯à®£à ¬¬ë |
rb 514 |
sc system_colors |
structure_of_potock: |
rb 100 |
;--------------------------------------------------------------------- |
I_END: ; ¬¥âª ª®æ ¯à®£à ¬¬ë |
sc system_colors |
/programs/system/setup/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/setup/trunk/setup.asm |
---|
14,14 → 14,13 |
use32 |
org 0x0 |
db 'MENUET01' ; 8 byte identifier |
dd 0x01 ; header version |
dd 0x01 ; title version |
dd START ; pointer to program start |
dd I_END ; size of image |
dd 0x4000 ; reguired amount of memory |
dd 0x4000 ; stack pointer (esp) |
dd I_PARAM,0 ; parameters, reserved |
; include 'lang.inc' |
include 'macros.inc' |
include '..\..\..\macros.inc' |
;****************************************************************************** |
LLL equ (56+3) |
174,7 → 173,7 |
mov eax,26 |
mov ebx,2 |
mov ecx,9 |
int 0x40 |
mcall |
; cmp eax,5 |
; jne @f |
; xor eax,eax |
194,7 → 193,7 |
mov eax,26 |
mov ebx,5 |
; mov ecx,9 |
int 0x40 |
mcall |
cmp eax,6 |
jne temp ;@f |
xor eax,eax |
254,13 → 253,13 |
cmp word [blinkpar],0 |
jne blinker |
mov eax,29 ;get system date |
int 0x40 |
mcall |
cmp eax,[date] |
je gettime |
mov [date],eax |
gettime: |
mov eax,3 ;get system time |
int 0x40 |
mcall |
cmp ax,[time] |
je sysevent |
mov [time],ax |
269,7 → 268,7 |
sysevent: |
mov eax,23 |
mov ebx,8 ; wait here for event with timeout |
int 0x40 |
mcall |
cmp eax,1 |
jz red |
364,7 → 363,7 |
key: |
;mov eax,2 |
int 0x40 |
mcall |
cmp ah,27 |
jne still |
mov dword [blinkpar],0 |
374,7 → 373,7 |
button: |
mov eax,17 |
int 0x40 |
mcall |
cmp ah,112 |
je incdectime |
429,7 → 428,7 |
jne no_close |
close: |
or eax,-1 |
int 0x40 |
mcall |
no_close: |
cmp ah,11 ; SET MIDI BASE |
717,15 → 716,15 |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
int 0x40 |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
int 0x40 |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,1 |
int 0x40 |
mcall |
call alt_gen |
nosetkeyle: |
cmp [keyboard],1 |
734,15 → 733,15 |
mov ebx,2 |
mov ecx,1 |
mov edx,fi_keymap |
int 0x40 |
mcall |
mov eax,21 |
inc ecx |
mov edx,fi_keymap_shift |
int 0x40 |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,2 |
int 0x40 |
mcall |
call alt_gen |
nosetkeylfi: |
cmp [keyboard],2 |
751,15 → 750,15 |
mov ebx,2 |
mov ecx,1 |
mov edx,ge_keymap |
int 0x40 |
mcall |
mov eax,21 |
inc ecx |
mov edx,ge_keymap_shift |
int 0x40 |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,3 |
int 0x40 |
mcall |
call alt_gen |
nosetkeylge: |
cmp [keyboard],3 |
768,16 → 767,16 |
mov ebx,2 |
mov ecx,1 |
mov edx,ru_keymap |
int 0x40 |
mcall |
mov eax,21 |
inc ecx |
mov edx,ru_keymap_shift |
int 0x40 |
mcall |
call alt_gen |
mov eax,21 |
mov ecx,9 |
mov edx,4 |
int 0x40 |
mcall |
nosetkeylru: |
cmp [keyboard],4 ;french |
jnz nosetkeylfr |
785,19 → 784,19 |
mov ebx,2 |
mov ecx,1 |
mov edx,fr_keymap |
int 0x40 |
mcall |
mov eax,21 |
inc ecx |
mov edx,fr_keymap_shift |
int 0x40 |
mcall |
mov eax,21 |
inc ecx |
mov edx,fr_keymap_alt_gr |
int 0x40 |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,5 |
int 0x40 |
mcall |
nosetkeylfr: |
cmp [keyboard],5 |
jnz nosetkeylet |
805,15 → 804,15 |
mov ebx,2 |
mov ecx,1 |
mov edx,et_keymap |
int 0x40 |
mcall |
mov eax,21 |
inc ecx |
mov edx,et_keymap_shift |
int 0x40 |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,6 |
int 0x40 |
mcall |
call alt_gen |
nosetkeylet: |
ret |
822,7 → 821,7 |
mov eax,21 |
mov ecx,3 |
mov edx,alt_general |
int 0x40 |
mcall |
ret |
836,15 → 835,15 |
mov ebx,(350-50)*65536+46+BBB |
mov eax,8 |
int 0x40 |
mcall |
mov ebx,(350-79)*65536+9 |
inc edx |
int 0x40 |
mcall |
mov ebx,(350-67)*65536+9 |
inc edx |
int 0x40 |
mcall |
popa |
ret |
862,14 → 861,14 |
mov eax,12 |
mov ebx,1 |
int 0x40 |
mcall |
xor eax,eax ; DRAW WINDOW |
mov ebx,40*65536+355+BBB |
mov ecx,40*65536+320 |
mov edx,0x93111199 |
mov edi,header |
int 0x40 |
mov edi,title |
mcall |
mov eax,8 ; APPLY ALL |
mov ebx,(350-79)*65536+100 |
876,10 → 875,10 |
mov ecx,282*65536+12 |
mov edx,100 |
mov esi,0x005588dd |
int 0x40 |
mcall |
add ecx,16*65536 ; SAVE ALL |
dec edx |
int 0x40 |
mcall |
mov esi,0x5580c0 |
943,7 → 942,7 |
mov eax,12 |
mov ebx,2 |
int 0x40 |
mcall |
popa |
ret |
1140,7 → 1139,7 |
mov ebx,175*65536+85 |
mov ecx,40*65536+225 |
mov edx,0x80111199-19 |
int 0x40 |
mcall |
mov edx,text00 |
mov ebx,10*65536+45 |
1149,7 → 1148,7 |
mov esi,LLL |
mov ebp,text1_strings |
newline: |
int 0x40 |
mcall |
add ebx,8+8 |
add edx,esi |
dec ebp |
1157,7 → 1156,7 |
mov ebp,text2_strings |
add ebx,8+8 |
@@: |
int 0x40 |
mcall |
add ebx,8+8 |
add edx,esi |
dec ebp |
1229,7 → 1228,7 |
mov eax,21 |
mov ebx,1 |
mov ecx,[midibase] |
int 0x40 |
mcall |
ret |
_cdbase: |
1236,7 → 1235,7 |
mov eax,21 |
mov ebx,3 |
mov ecx,[cdbase] |
int 0x40 |
mcall |
ret |
_hdbase: |
1243,7 → 1242,7 |
mov eax,21 |
mov ebx,7 |
mov ecx,[hdbase] |
int 0x40 |
mcall |
ret |
_sound_dma: |
1250,7 → 1249,7 |
mov eax,21 |
mov ebx,10 |
mov ecx,[sound_dma] |
int 0x40 |
mcall |
ret |
_lba_read: |
1257,7 → 1256,7 |
mov eax,21 |
mov ebx,11 |
mov ecx,[lba_read] |
int 0x40 |
mcall |
ret |
_pci_acc: |
1264,7 → 1263,7 |
mov eax,21 |
mov ebx,12 |
mov ecx,[pci_acc] |
int 0x40 |
mcall |
ret |
_f32p: |
1271,7 → 1270,7 |
mov eax,21 |
mov ebx,8 |
mov ecx,[f32p] |
int 0x40 |
mcall |
ret |
_sb16: |
1278,7 → 1277,7 |
mov eax,21 |
mov ebx,4 |
mov ecx,[sb16] |
int 0x40 |
mcall |
ret |
_syslang: |
1285,7 → 1284,7 |
mov eax,21 |
mov ebx,5 |
mov ecx,[syslang] |
int 0x40 |
mcall |
ret |
_mouse_speed: |
1293,7 → 1292,7 |
mov ebx,19 |
mov ecx,1 |
mov edx,[mouse_speed] |
int 0x40 |
mcall |
ret |
_mouse_delay: |
1301,7 → 1300,7 |
mov ebx,19 |
mov ecx,3 |
mov edx,[mouse_delay] |
int 0x40 |
mcall |
ret |
loadtxt: |
1375,7 → 1374,7 |
db 'SAVE YOUR SETTINGS BEFORE QUIT KOLIBRI SAVE ALL ' |
text2_strings = 2 |
header db 'SETUP',0 |
title db 'SETUP',0 |
hex db '0123456789ABCDEF' |
/programs/system/skinsel/skinsel.asm |
---|
1,3 → 1,4 |
include '..\..\macros.inc' |
use32 |
db 'MENUET01' |
dd 1 |
10,7 → 11,7 |
push 70 |
pop eax |
mov ebx, fileinfo |
int 0x40 |
mcall |
cmp ebx, max_file_size |
jz exit |
cmp ebx, -1 |
17,7 → 18,7 |
jnz @f |
exit: |
or eax, -1 |
int 0x40 |
mcall |
@@: |
mov esi, filebuf |
xor ecx, ecx |
45,7 → 46,7 |
jecxz exit |
push 3 |
pop eax |
int 0x40 |
mcall |
ror eax, 16 |
mov edx, 1024 |
@@: |
83,7 → 84,7 |
push 48 |
pop eax |
mov bl, 8 |
int 0x40 |
mcall |
jmp exit |
fileinfo: |
/programs/system/vrr/trunk/infoform.txt |
---|
File deleted |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/vrr/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
/programs/system/vrr/trunk/Warning.txt |
---|
File deleted |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/vrr/trunk/build_en.bat |
---|
1,4 → 1,5 |
@erase lang.inc |
@echo lang fix en >lang.inc |
@fasm vrr.asm vrr |
@erase lang.inc |
@pause |
/programs/system/vrr/trunk/build_ru.bat |
---|
1,4 → 1,5 |
@erase lang.inc |
@echo lang fix ru >lang.inc |
@fasm vrr.asm vrr |
@erase lang.inc |
@pause |
/programs/system/vrr/trunk/vrr.asm |
---|
12,7 → 12,7 |
org 0x0 |
db 'MENUET01' ; 8 byte id |
dd 0x01 ; header version |
dd 0x01 ; title version |
dd START ; start of code |
dd I_END ; size of image |
dd 0x5000 ; memory for app |
19,11 → 19,11 |
dd 0x4ff0 ; esp |
dd 0x0 , 0x0 ; I_Param , I_Icon |
include 'macros.inc' |
include '..\..\..\macros.inc' |
START: ; start of execution |
mov eax,14 |
int 40h |
mcall |
mov ebx,eax |
shr ebx,16 |
mov [oldX],ebx |
36,7 → 36,7 |
mov ebx,13 |
mov ecx,1 |
mov edx,drvinfo |
int 40h |
mcall |
cmp eax,0FFFFFFFFh ; = -1 - error or not installed |
jne vrr_00 |
call warning_info |
54,7 → 54,7 |
still: |
mov eax,10 ; check here for event |
int 0x40 |
mcall |
cmp eax,1 ; redraw request ? |
je red |
67,7 → 67,7 |
key: ; key |
mov al,2 ; just read it |
int 0x40 |
mcall |
cmp ah,'1' |
jne key_loc_00 |
call safekey |
141,12 → 141,12 |
button: ; button |
mov al,17 ; get id |
int 0x40 |
mcall |
cmp ah,1 ; button id=1 ? |
jne noclose |
mov eax,-1 ; close this program |
int 0x40 |
mcall |
noclose: |
cmp ah,2 ;'+' screen width |
jne button_loc_01 |
194,7 → 194,7 |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,1 ; 1, start of draw |
int 0x40 |
mcall |
; DRAW WINDOW |
mov eax,0 ; function 0 : define and draw window |
201,8 → 201,8 |
mov ebx,100*65536+400 ; [x start] *65536 + [x size] |
mov ecx,100*65536+200 ; [y start] *65536 + [y size] |
mov edx,0x130020C0;0x00000040 ; color of work area RRGGBB,8->color glide |
mov edi,header |
int 0x40 |
mov edi,title |
mcall |
; BUTTONS |
mov eax,8 |
211,29 → 211,29 |
mov ecx,84*65536+48 |
mov dl,2 |
mov esi,0x5599cc ; button color RRGGBB |
int 40h ; Button '+'Width |
mcall ; Button '+'Width |
add ebx,30*65536 |
mov dl,3 |
int 40h ; Button '-'Width |
mcall ; Button '-'Width |
mov ebx,22*65536+85 |
mov ecx,170*65536+15 |
inc dl ;dl=4 |
int 40h ; Button 'Ok' |
mcall ; Button 'Ok' |
add ebx,90*65536 |
inc dl ;dl=5 |
int 40h ; Button 'Cancel' |
mcall ; Button 'Cancel' |
add ebx,90*65536 |
inc dl ;dl=6 |
int 40h ; Button 'Return' |
mcall ; Button 'Return' |
add ebx,90*65536 |
inc dl ;dl=7 |
int 40h ; Button 'Default' |
mcall ; Button 'Default' |
call draw_face |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,2 ; 2, end of draw |
int 0x40 |
mcall |
ret |
246,7 → 246,7 |
mov eax,21 |
mov ebx,13 |
mov ecx,4 |
int 40h |
mcall |
pop edx |
pop ecx |
pop eax |
267,7 → 267,7 |
mov eax,21 |
mov ebx,13 |
mov ecx,3 |
int 40h |
mcall |
mcall 5,50 |
mcall 15,3 |
pop edx |
284,7 → 284,7 |
mov eax,21 |
mov ebx,13 |
mov ecx,5 |
int 40h |
mcall |
pop edx |
pop ecx |
pop ebx |
295,7 → 295,7 |
mov ebx,buffer |
xor ecx,ecx |
dec ecx |
int 40h |
mcall |
mov [totp],eax |
mov eax,[ebx+30] |
mov [mypid],eax |
310,7 → 310,7 |
mov al,21 |
mov bl,13 |
mov cl,2 |
int 40h |
mcall |
mov [initrr],ebx |
mov [refrate],ebx |
ror ecx,16 |
328,15 → 328,15 |
mov ebx,9*65536+303 |
mov ecx,59*65536+87 |
xor edx,edx |
int 40h |
mcall |
mov ebx,10*65536+300 |
mov ecx,60*65536+24 |
mov edx,00FF00FFh |
int 40h |
mcall |
mov ebx,10*65536+36 |
mov ecx,72*65536+72 |
mov edx,0000FFFFh |
int 40h |
mcall |
mov eax,38 |
mov edx,00FFFFFFh |
mov ebx,10*65536+310 |
347,7 → 347,7 |
dt_loc_hor_line: |
push ecx |
mov ecx,edi |
int 40h |
mcall |
add edi,esi |
pop ecx |
loop dt_loc_hor_line |
355,7 → 355,7 |
mov edi,60*65536+144 |
mov esi,66*65536+66 |
mov ecx,edi |
int 40h |
mcall |
add ebx,36*65536+36 |
xor ecx,ecx |
mov cl,5 |
362,7 → 362,7 |
dt_loc_vert_line: |
push ecx |
mov ecx,edi |
int 40h |
mcall |
add ebx,esi |
pop ecx |
loop dt_loc_vert_line |
371,16 → 371,16 |
mov ecx,000000FFh |
mov edx,_m1280x1024 |
mov esi,9 |
int 40h |
mcall |
add edx,9 |
add ebx,66*65536 |
int 40h |
mcall |
add edx,9 |
add ebx,66*65536 |
int 40h |
mcall |
add edx,9 |
add ebx,66*65536 |
int 40h |
mcall |
xor eax,eax |
mov ebx,eax |
mov ecx,eax |
395,7 → 395,7 |
dt_loc_00: |
push ecx |
mov ecx,edi |
int 40h |
mcall |
inc edi |
add dx,12 |
pop ecx |
409,7 → 409,7 |
dt_loc_01: |
push ecx |
mov ecx,edi |
int 40h |
mcall |
inc edi |
add edx,66*65536 |
pop ecx |
419,11 → 419,11 |
mov ecx,000000FFh |
mov edx,_mk |
mov esi,4 |
int 40h |
mcall |
shl ecx,16 |
add bx,12 |
add edx,4 |
int 40h |
mcall |
retn |
;IN: ah=keycode |
490,24 → 490,24 |
mov edi,ecx |
shr edi,16 |
mov cx,di |
int 40h |
mcall |
pop ecx |
push ecx |
mov edi,ecx |
ror ecx,16 |
mov cx,di |
int 40h |
mcall |
pop ecx |
push ebx |
mov edi,ebx |
shr edi,16 |
mov bx,di |
int 40h |
mcall |
pop ebx |
mov edi,ebx |
ror ebx,16 |
mov bx,di |
int 40h |
mcall |
pop edi |
pop edx |
pop ecx |
524,7 → 524,7 |
mov al,5 |
xor ebx,ebx |
mov bx,300 |
int 40h |
mcall |
call get_pid |
xor eax,eax |
mov ebx,eax |
532,7 → 532,7 |
mov al,18 |
mov ebx,3 |
mov cx,[mypno] |
int 40h |
mcall |
pop ecx |
pusha |
call draw_window |
541,10 → 541,10 |
mov al,5 |
xor ebx,ebx |
mov bx,300 |
int 40h |
mcall |
xor eax,eax |
mov al,11 |
int 40h |
mcall |
cmp eax,1 |
jne par_loc_00 |
pusha |
555,7 → 555,7 |
mov ebx,eax |
mov al,23 |
mov bx,700 |
int 40h |
mcall |
cmp eax,0 |
jnz par_loc_02 |
; mov [ftr_eax],eax |
575,10 → 575,10 |
; mov ecx,[ftr_eax] |
; mov edx,20*65536+180 |
; mov esi,00FFFFFFh |
; int 40h |
; mcall |
; mov ecx,[ftr_ebx] |
; add edx,54*65536 |
; int 40h |
; mcall |
retn |
print_cur_vm: |
587,9 → 587,9 |
mov ecx,0000FF00h |
mov edx,curmode |
mov esi,cmlen |
int 40h |
mcall |
mov al,14 |
int 40h |
mcall |
mov esi,00FFFFFFh |
mov edi,eax |
shr eax,16 |
601,21 → 601,21 |
shl ebx,16 |
mov edx,104*65536+40 |
mov eax,47 |
int 40h |
mcall |
add edx,30*65536 |
mov cx,di |
inc ecx |
int 40h |
mcall |
add edx,30*65536 |
mov ecx,[initrr] |
sub ebx,1*65536 |
int 40h |
mcall |
mov al,4 |
mov ebx,200*65536+40 |
mov ecx,0000FF00h |
mov edx,selmode |
mov esi,cmlen |
int 40h |
mcall |
mov ax,[vmselect] |
cmp ax,0 |
jz pcv_loc_00 |
625,7 → 625,7 |
mov ebx,284*65536+54 |
mov ecx,40*65536+10 |
mov edx,000020C0h |
int 40h |
mcall |
pop eax |
push eax |
xor ecx,ecx |
640,7 → 640,7 |
mov esi,9 |
mov ebx,284*65536+40 |
mov ecx,00ff0000h |
int 40h |
mcall |
pop eax |
cmp ah,0 |
jz pcv_loc_00 |
653,7 → 653,7 |
mov ebx,344*65536+18 |
mov ecx,40*65536+10 |
mov edx,000020C0h |
int 40h |
mcall |
pop eax |
push eax |
mov bx,ax |
682,7 → 682,7 |
xor eax,eax |
mov al,47 |
mov esi,00ff0000h |
int 40h |
mcall |
pop eax |
pop ecx |
pop edx |
747,7 → 747,7 |
mov edx,noherz |
xor esi,esi |
mov si,3 |
int 40h |
mcall |
pop esi |
pop edx |
pop ecx |
771,7 → 771,7 |
mov esi,00FFFFFFh |
xor eax,eax |
mov al,47 |
int 40h |
mcall |
pop esi |
pop edx |
pop ecx |
863,13 → 863,13 |
mov ebx,182*65536+36 |
mov ecx,26*65536+5 |
mov edx,000020C0h |
int 40h |
mcall |
mov ebx,173*65536+54 |
mov ecx,153*65536+7 |
int 40h |
mcall |
mov ebx,337*65536+36 |
mov ecx,62*65536+10 |
int 40h |
mcall |
mov al,4 |
shr ecx,16 |
mov bx,cx |
877,41 → 877,41 |
mov ecx,00FF0000h |
mov edx,width |
mov esi,5 |
int 40h |
mcall |
xor ecx,ecx |
add edx,5 |
xor esi,esi |
inc esi |
mov ebx,335*65536+104 |
int 40h |
mcall |
add ebx,36*65536 |
inc edx |
int 40h |
mcall |
mov edx,tmode |
mov ecx,00FF0000h |
mov ebx,182*65536+24 |
mov esi,6 |
int 40h |
mcall |
mov edx,actions |
mov ebx,173*65536+152 |
mov esi,9 |
int 40h |
mcall |
xor ecx,ecx |
mov edx,button1 |
mov ebx,59*65536+174 |
mov esi,2 |
int 40h |
mcall |
add edx,esi |
mov esi,6 |
add ebx,78*65536 |
int 40h |
mcall |
add edx,esi |
add ebx,90*65536 |
int 40h |
mcall |
add edx,esi |
mov esi,7 |
add ebx,87*65536 |
int 40h |
mcall |
call rect_select |
; call debug_ftr |
call print_cur_vm |
926,7 → 926,7 |
warning_window: |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,1 ; 1, start of draw |
int 0x40 |
mcall |
; DRAW WARNING WINDOW |
xor eax,eax ; function 0 : define and draw window |
mov ebx,[oldX] |
941,8 → 941,8 |
shl ecx,16 |
mov cx,200 |
mov edx,0x13808080 ; color of work area RRGGBB,8->color glide |
mov edi,header |
int 0x40 |
mov edi,title |
mcall |
; WARNING TEXT |
mov eax,4 ; function 4 : write text to window |
951,31 → 951,31 |
mov ecx,0xf0ff0000 ; color of text RRGGBB |
mov edx,warn00 ; pointer to text beginning |
mov esi,len_warn00 ; text length |
; int 0x40 |
; mcall |
; inc ebx |
int 40h |
mcall |
add ebx,1*65536 |
int 40h |
mcall |
mov ebx,(200-(len_warn01/2)*6)*65536+100 |
mov edx,warn01 |
mov esi,len_warn01 |
int 40h |
mcall |
mov edx,button1 |
add ecx,0ffffh |
mov ebx,(200-6)*65536+(160-4) |
mov esi,2 |
int 40h |
mcall |
mov eax,12 ; function 12:tell os about windowdraw |
mov ebx,2 ; 2, end of draw |
int 0x40 |
mcall |
retn |
warning_loop: |
mov eax,5 |
mov ebx,13 |
int 0x40 |
mcall |
mov eax,11 |
int 40h |
mcall |
cmp eax,1 ; redraw request ? |
je warning_red |
cmp eax,2 ; key in buffer ? |
995,9 → 995,9 |
shl ecx,16 |
mov edx,warn01 |
mov esi,len_warn01 |
int 40h |
mcall |
sub ebx,1*65536 |
int 40h |
mcall |
jmp warning_loop |
warning_red: ; redraw |
call warning_window |
1004,21 → 1004,21 |
jmp warning_loop |
warning_key: ; key |
mov eax,2 ; read key |
int 0x40 |
mcall |
cmp ah,01h |
jne warning_loop |
xor eax,eax |
dec eax ; Terminate application |
int 40h |
mcall |
jmp warning_loop |
warning_button: ; button |
mov eax,17 ; get id |
int 0x40 |
mcall |
cmp ah,1 ; button id=1 ? |
jne warning_loop |
xor eax,eax |
dec eax ; close this program |
int 0x40 |
mcall |
jmp warning_loop |
retn |
1045,7 → 1045,7 |
;_m3 dw 0,0,0,0,0 |
;_m4 dw 0,0,0,0,0 |
header db 'Vertical Refresh Rate v2.0 (C) 2003 TRANS',0 |
title db 'Vertical Refresh Rate v2.0 (C) 2003 TRANS',0 |
_m1280x1024 db '1280x1024' |
_m1024x768 db '1024x768 ' |
/programs/system/vrr_m/trunk/macros.inc |
---|
File deleted |
\ No newline at end of file |
Property changes: |
Deleted: svn:eol-style |
-native |
\ No newline at end of property |
/programs/system/vrr_m/trunk/vrr_m.asm |
---|
27,7 → 27,7 |
dd 0x0 ; ¤à¥á ¡ãä¥à ¤«ï ¯ à ¬¥â஢ (¥ ¨á¯®«ì§ã¥âáï) |
dd 0x0 ; § १¥à¢¨à®¢ ® |
include 'MACROS.INC' ; ¬ ªà®áë ®¡«¥£ç îâ ¦¨§ì áᥬ¡«¥à騪®¢! |
include '..\..\..\macros.inc' ; ¬ ªà®áë ®¡«¥£ç îâ ¦¨§ì áᥬ¡«¥à騪®¢! |
;--------------------------------------------------------------------- |
;--- ---------------------------------------------- |