Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 229 → Rev 485

/programs/other/period/trunk/MACROS.INC
File deleted
\ No newline at end of file
/programs/other/period/trunk/period.asm
9,7 → 9,7
;;
;; ¬ ªà®á ¤«ï ᮧ¤ ­¨ï ¬ áᨢ  㪠§ â¥«¥© ­  ASCIIZ-áâப¨
 
include 'macros.inc'
include '..\..\..\macros.inc'
macro strtbl name,[string]
{
common
36,6 → 36,13
re_ID dd 0x00000001 ;¤«ï åà ­¥­¨ï ­®¬¥à  ⥪ã饣® ¢ë¢®¤¨¬®£® í«¥¬¥­â 
 
START:
 
mov eax,48
mov ebx,3
mov ecx,sc
mov edx,sizeof.system_colors
mcall
 
red:
call draw_window
 
42,7 → 49,8
still: ;®á­®¢­®© 横« ¯à®£à ¬¬ë
push 10 ;®¦¨¤ ­¨¥ ᮡëâ¨ï
pop eax
int 0x40
mcall
 
dec eax
je red
dec eax
50,18 → 58,18
 
key:
mov al,2
int 0x40
mcall
jmp still
 
button:
mov al,17 ;¯®«ãç ¥¬ ID ­ ¦ â®© ª­®¯ª¨
int 0x40
mcall
shr eax,8 ; eax=24-¡¨â­ë© ButtonID
 
cmp eax,1 ;­ ¦ â  «¨ "‡ ªàëâì" [x]
jne noclose
or eax,-1
int 0x40
mcall
 
noclose:
cmp eax,200
70,91 → 78,85
no_H:
mov [re_ID],eax
;; <mistifi(ator>
call VYVOD
call draw_text
;; </mistifi(ator>
jmp still
 
draw_window:
mov eax,48
mov ebx,3
mov ecx,sc
mov edx,sizeof.system_colors
int 0x40
 
mov eax,12 ;begin drawing
xor ebx,ebx
inc ebx
int 0x40
mcall
; DRAW WINDOW
xor eax,eax
mov ebx,50*65536+550 ;x
mov ecx,30*65536+450 ;y
mov ebx,50*65536+555 ;x
mov ecx,30*65536+455 ;y
mov edx,[sc.work]
or edx,0x13000000 ;style
mov edi,Caption
int 0x40
or edx,0x33000000 ;style
mov edi,caption
mcall
 
Nadpisi_v_okne:
text_in_window:
mov eax,4 ;¢ë¢®¤ ⥪áâ 
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
 
mov ebx,40*65536+225 ;« ­â ­®¨¤ë
mov ebx,40*65536+200 ;« ­â ­®¨¤ë
mov edx,Lantanoid_text
int 0x40
mcall
 
add ebx,20 ; ªâ¨­®¨¤ë
mov edx,Actinoid_text
int 0x40
mcall
 
mov ebx,150*65536+280
mov edx,Por_nomer
int 0x40
mov ebx,150*65536+255
mov edx,number
mcall
 
add ebx,15
mov edx,Nazvanie
int 0x40
mov edx,name
mcall
 
add ebx,15
mov edx,Angl_nazv
int 0x40
mov edx,eng_name
mcall
 
add ebx,15
mov edx,Atomic_massa
int 0x40
mcall
 
add ebx,15
mov edx,Plotnost_caption
int 0x40
mov edx,density
mcall
 
add ebx,15
mov edx,Step_okisl
int 0x40
mcall
 
add ebx,15
mov edx,Electrootr
int 0x40
mcall
 
add ebx,15
mov edx,T_pl
int 0x40
mcall
 
add ebx,15
mov edx,T_kip
int 0x40
mcall
 
add ebx,15
mov edx,Raspr
int 0x40
mcall
 
add ebx,15
mov edx,Otkrytie
int 0x40
mcall
 
; ‚›‚Ž„ ŽŒ…Ž‚ …ˆŽ„Ž‚
mov ebx,30*65536+68
mov ebx,30*65536+43
mov edx,Period_text ;1
int 0x40
mcall
 
call @f ;2
call @f ;3
167,393 → 169,393
@@:
add ebx,20
add edx,4 ;â.ª. áâப  = 4 ¡ ©â ¬(á ­ã«ñ¬)
int 0x40
mcall
ret
 
Table: ;Žâà¨á®¢ª  â ¡«¨æë ¢ ¢¨¤¥ ª®­®¯®ç¥ª
table_rjad_1:
table_row_1:
shl eax,1
mov ebx,50*65536+25
mov ecx,60*65536+20
mov ecx,35*65536+20
mov edx,200
mov esi,0xE19123
int 0x40
mcall
He_:
mov ebx,491*65536+25
mov esi,0x0f0c314
mov edx,2
int 0x40
table_rjad_2:
mcall
table_row_2:
Li:
mov ebx,50*65536+25
mov ecx,81*65536+20
mov ecx,56*65536+20
mov esi,0xE19123
inc edx
int 0x40
mcall
Be:
mov ebx,76*65536+25
inc edx
int 0x40
mcall
B_:
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mcall
mov edi,4
table_rjad_2_loop:
table_row_2_loop:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns table_rjad_2_loop
table_rjad_3:
jns table_row_2_loop
table_row_3:
Na:
mov ebx,50*65536+25
mov ecx,102*65536+20
mov ecx,77*65536+20
mov esi,0xE19123
inc edx
int 0x40
mcall
 
mov ebx,76*65536+25
inc edx
int 0x40
mcall
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mcall
mov edi,4
table_rjad_3_loop:
table_row_3_loop:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns table_rjad_3_loop
jns table_row_3_loop
 
Table_rjad_4:
Table_row_4:
K_:
mov ebx,50*65536+25
mov ecx,123*65536+20
mov ecx,98*65536+20
mov esi,0xE19123
inc edx
int 0x40
mcall
Ca:
mov ebx,76*65536+25
inc edx
int 0x40
mcall
Sc:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
int 0x40
mcall
mov edi,8
Table_rjad_4_loop1:
Table_row_4_loop1:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns Table_rjad_4_loop1
jns Table_row_4_loop1
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mcall
mov edi,4
table_rjad_4_loop2:
table_row_4_loop2:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns table_rjad_4_loop2
jns table_row_4_loop2
 
Table_rjad_5:
Table_row_5:
Rb_:
mov ebx,50*65536+25
mov ecx,144*65536+20
mov ecx,119*65536+20
mov esi,0xE19123
inc edx
int 0x40
mcall
Sr_:
mov ebx,76*65536+25
inc edx
int 0x40
mcall
Y_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
int 0x40
mcall
mov edi,8
Table_rjad_5_loop1:
Table_row_5_loop1:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns Table_rjad_5_loop1
jns Table_row_5_loop1
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mcall
mov edi,4
table_rjad_5_loop2:
table_row_5_loop2:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns table_rjad_5_loop2
jns table_row_5_loop2
 
Table_rjad_6:
Table_row_6:
Cs_:
mov ebx,50*65536+25
mov ecx,165*65536+20
mov ecx,140*65536+20
mov esi,0xE19123
inc edx
int 0x40
mcall
Ba_:
mov ebx,76*65536+25
inc edx
int 0x40
mcall
La_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
int 0x40
mcall
mov edx,71
mov edi,8
Table_rjad_6_loop1:
Table_row_6_loop1:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns Table_rjad_6_loop1
jns Table_row_6_loop1
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mcall
mov edi,4
table_rjad_6_loop2:
table_row_6_loop2:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns table_rjad_6_loop2
jns table_row_6_loop2
 
Table_rjad_7:
Table_row_7:
Fr_:
mov ebx,50*65536+25
mov ecx,186*65536+20
mov ecx,161*65536+20
mov esi,0xE19123
inc edx
int 0x40
mcall
Ra_:
mov ebx,76*65536+25
inc edx
int 0x40
mcall
Ac_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
int 0x40
mcall
mov edx,103
mov edi,8
Table_rjad_7_loop1:
Table_row_7_loop1:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns Table_rjad_7_loop1
jns Table_row_7_loop1
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mcall
mov edi,2
table_rjad_7_loop2:
table_row_7_loop2:
add ebx,26*65536
inc edx
int 0x40
mcall
dec edi
jns table_rjad_7_loop2
jns table_row_7_loop2
 
Rjad_1:
row_1:
Cerium_:
mov ebx,102*65536+25
mov ecx,215*65536+20
mov ecx,190*65536+20
mov edx,58
mov esi,0x73beeb
int 0x40
mcall
mov edi,12
 
Rjad_1_loop:
row_1_loop:
add ebx,26*65536
inc edx
dec edi
int 0x40
jns Rjad_1_loop
Rjad_2:
mcall
jns row_1_loop
row_2:
dgfsfHe_:
mov ebx,102*65536+25
mov ecx,236*65536+20
mov ecx,211*65536+20
mov edx,90
int 0x40
mcall
mov edi,12
Rjad_2_loop:
row_2_loop:
 
add ebx,26*65536
inc edx
dec edi
int 0x40
jns Rjad_2_loop
mcall
jns row_2_loop
 
Nadpisi_na_knopkah:
nadp_rjad1:
text_on_buttons:
text_row1:
;H
shr eax,1
mov ebx,62*65536+68
mov ebx,62*65536+43
mov ecx,0x00000000
mov edx,Symbols
mov esi,3
int 0x40
mcall
;Ne
mov ebx,500*65536+68
mov ebx,500*65536+43
add edx,3
int 0x40
nadp_rjad2_1:
mov ebx,60*65536+88
mcall
text_row2_1:
mov ebx,60*65536+63
add edx,3
int 0x40
mcall
 
mov ebx,85*65536+88
mov ebx,85*65536+63
add edx,3
int 0x40
nadp_rjad2_2:
mov ebx,374*65536+88
mcall
text_row2_2:
mov ebx,374*65536+63
add edx,3
int 0x40
mcall
mov edi,4
 
nadp_rjad2_2_loop:
text_row2_2_loop:
add ebx,25*65536
add edx,3
int 0x40
mcall
 
dec edi
jns nadp_rjad2_2_loop
nadp_rjad3_1:
mov ebx,60*65536+108
jns text_row2_2_loop
text_row3_1:
mov ebx,60*65536+83
add edx,3
int 0x40
mcall
 
mov ebx,85*65536+108
mov ebx,85*65536+83
add edx,3
int 0x40
nadp_rjad3_2:
mov ebx,374*65536+108
mcall
text_row3_2:
mov ebx,374*65536+83
add edx,3
int 0x40
mcall
mov edi,4
nadp_rjad3_2_loop:
text_row3_2_loop:
add ebx,25*65536
add edx,3
int 0x40
mcall
 
dec edi
jns nadp_rjad3_2_loop
nadp_rjad4:
mov ebx,60*65536+129
jns text_row3_2_loop
text_row4:
mov ebx,60*65536+104
add edx,3
int 0x40
mcall
mov edi,16
nadp_rjad4_loop:
text_row4_loop:
add ebx,26*65536
add edx,3
int 0x40
mcall
 
dec edi
jns nadp_rjad4_loop
nadp_rjad5:
mov ebx,60*65536+150
jns text_row4_loop
text_row5:
mov ebx,60*65536+125
add edx,3
int 0x40
mcall
mov edi,16
nadp_rjad5_loop:
text_row5_loop:
add ebx,26*65536
add edx,3
int 0x40
mcall
 
dec edi
jns nadp_rjad5_loop
nadp_rjad6:
mov ebx,60*65536+171
jns text_row5_loop
text_row6:
mov ebx,60*65536+146
add edx,3
int 0x40
mcall
mov edi,16
nadp_rjad6_loop:
text_row6_loop:
add ebx,26*65536
add edx,3
int 0x40
mcall
dec edi
jns nadp_rjad6_loop
nadp_rjad7:
mov ebx,60*65536+192
jns text_row6_loop
text_row7:
mov ebx,60*65536+167
add edx,3
int 0x40
mcall
mov edi,9
nadp_rjad7_loop:
text_row7_loop:
add ebx,26*65536
add edx,3
int 0x40
mcall
 
dec edi
jns nadp_rjad7_loop
jns text_row7_loop
mov edi,4
nadp_rjad7_loop2:
text_row7_loop2:
add ebx,24*65536
add edx,3
int 0x40
mcall
dec edi
jns nadp_rjad7_loop2
jns text_row7_loop2
 
nadp_rjad8:
mov ebx,111*65536+222
text_row8:
mov ebx,111*65536+197
add edx,3
int 0x40
mcall
mov edi,12
 
nadp_rjad8_loop:
text_row8_loop:
add ebx,26*65536
add edx,3
int 0x40
mcall
 
dec edi
jns nadp_rjad8_loop
jns text_row8_loop
 
nadp_rjad9:
mov ebx,111*65536+242
text_row9:
mov ebx,111*65536+217
add edx,3
int 0x40
mcall
mov edi,12
 
nadp_rjad9_loop:
text_row9_loop:
add ebx,26*65536
add edx,3
int 0x40
mcall
 
dec edi
jns nadp_rjad9_loop
jns text_row9_loop
 
;; <mistifi(ator> - ª®à®ç¥ ¢ë­®á¨¬ ¢ ®â¤¥«ì­ãî ¯à®æ¥¤ãàã
call VYVOD
call draw_text
;; </mistifi(ator>
 
finish:
mov eax,12 ;end drawing
mov ebx,2
int 0x40
mcall
ret
 
VYVOD:
draw_text:
 
; 1 ¢ë¢®¤ ¯®à浪®¢®£® ­®¬¥à  [optmzd-mem]
; 2 ¢ë¢®¤ àãá᪮£® ­ §¢ ­¨ï [optmzd-mem]
570,9 → 572,9
;; <mistifi(ator> - § ªà áª , çâ®-¡ë ­¥ ¡ë«® ­ «®¦¥­¨ï ¯à¨ ¯à®à¨á®¢ª¥ ⥪áâ 
mov eax,13
mov ebx,320*65536+210
mov ecx,280*65536+(15*11)
mov ecx,255*65536+(15*11)
mov edx,[sc.work]
int 0x40
mcall
;; </mistifi(ator>
 
579,13 → 581,12
push edi ; çâ®¡ë ®¯â¨¬¨§¨à®¢ âì ¨§¬¥­¥­¨ï ebx
 
; 1 ¢ë¢®¤ ¯®à浪®¢®£® ­®¬¥à  [optmzd-mem]
xor ebx,ebx
or ebx,00000000000000110000000000000000b
mov ebx,0x30000 ;¢ë¢®¤¨âì 3 æ¨äàë
mov ecx,[re_ID]
mov edx,320*65536+280+15*0
mov edx,320*65536+255
xor esi,esi
mov eax,47
int 0x40
mcall
 
;‚ˆŒ€ˆ…! ‡„…‘œ ‡€„€ð’‘Ÿ –‚…’ ‚‘…ƒŽ Ž‘’€‹œŽƒŽ ’…Š‘’€! [ᤥ« ­® ¤«ï ᮪à é¥­¨ï ª®¤  ­  20 ¡ ©â :)))]
mov ecx,[sc.work_text] ; –‚…’
594,7 → 595,7
 
; 2 ¢ë¢®¤ “‘‘ŠŽ… €‡‚€ˆ… [optmzd-mem]
mov edi,Rus_nazv ;㪠§ â¥«ì ­  ­ ç «® ¬ áᨢ  㪠§ â¥«¥© ;)
mov ebx,320*65536+280+15*0 ;§¤¥áì ¢­®áïâáï ª®®à¤¨­ âë, ¤ «ìè¥ ¡ã¤¥â «¨èì add ebx,15
mov ebx,320*65536+255 ;§¤¥áì ¢­®áïâáï ª®®à¤¨­ âë, ¤ «ìè¥ ¡ã¤¥â «¨èì add ebx,15
call out_asciiz_item
 
xor ecx,ecx ;color
606,7 → 607,7
imul edi,esi ;áç¨â ¥¬ 㪠§ â¥«ì ­  ­ã¦­ãî áâபã
add edx,edi
add ebx,15 ; 㢥«¨ç¨¢ ¥¬ y-ª®®à¤¨­ âã ⥪áâ  ­  15 ¯¨ªá¥«¥©
int 0x40
mcall
 
; 4 ¢ë¢®¤  â®¬­®© ¬ ááë [optmzd-spd]
mov edx,MassNo
616,7 → 617,7
imul edi,esi ;áç¨â ¥¬ 㪠§ â¥«ì ­  ­ã¦­ãî áâபã
add edx,edi
add ebx,15
int 0x40
mcall
 
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
; 5 ¢ë¢®¤ ‹Ž’Ž‘’œ [optmzd-mem]
636,7 → 637,7
shl edi,2
add edx,edi
add ebx,15
int 0x40
mcall
 
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
; 8 ¢ë¢®¤ ’…Œ…€’“€ ‹€‚‹…ˆŸ [optmzd-mem]
665,7 → 666,7
shl edx,2 ;㬭®¦¨âì ­  4 (à §¬¥à 㪠§ â¥«ï)
mov edx,[edx+edi] ;㪠§ â¥«ì ­  áâப㠢 edx
add ebx,15
int 0x40
mcall
ret
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
674,11 → 675,11
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;---- begin ---- „ ­­ë¥ ¤«ï ƒ‹€‚ŽƒŽ ®ª­  --------------------------
Caption db '¥à¨®¤¨ç¥áª ï á¨á⥬  „.ˆ.Œ¥­¤¥«¥¥¢  by [navanax] & [Johnny_B]',0
Plotnost_caption db '«®â­®áâì',0
caption db '¥à¨®¤¨ç¥áª ï á¨á⥬  „.ˆ.Œ¥­¤¥«¥¥¢  by [navanax] & [Johnny_B]',0
density db '«®â­®áâì',0
Atomic_massa db '€â®¬­ ï ¬ áá ',0
Nazvanie db ' §¢ ­¨¥',0
Angl_nazv db '€­£«. ­ §¢ ­¨¥',0
name db ' §¢ ­¨¥',0
eng_name db '€­£«. ­ §¢ ­¨¥',0
T_pl db '’¥¬¯¥à âãà  ¯«.',0
T_kip db '’¥¬¯¥à âãà  ª¨¯.',0
Electrootr db '«¥ªâà®®âà¨æ â¥«ì­®áâì',0
685,7 → 686,7
Raspr db ' á¯à¥¤¥«¥­¨¥ ¢ §¥¬­. ª®à¥',0
Step_okisl db '‘⥯¥­ì ®ª¨á«¥­¨ï',0
Otkrytie db 'Žâªàë⨥',0
Por_nomer db '®à浪®¢ë© ­®¬¥à',0
number db '®à浪®¢ë© ­®¬¥à',0
Period_text:
db ' I',0
db ' II',0
948,12 → 949,12
 
;€’ŽŒ€Ÿ Œ€‘‘€
MassNo: ;116 í«¥¬¥­â®¢
db '1.00797' ; 1
db '1.00794' ; 1
db '4.0026 '
db '6.939 '
db '9.0122 '
db '6.941 '
db '9.01218'
db '10.811 '
db '12.0112'
db '12.0107'
db '14.0067'
db '15.9994'
db '18.9984'
961,21 → 962,21
db '22.9898'
db '24.305 '
db '26.9815'
db '28.086 '
db '28.0855'
db '30.9738'
db '32.066 '
db '35.453 '
db '39.948 '
db '39.102 '
db '40.08 ' ; 20
db '44.958 '
db '39.0983'
db '40.078 ' ; 20
db '44.9559'
db '47.88 '
db '50.942 '
db '50.9415'
db '51.996 '
db '54.938 '
db '55.847 '
db '58.9332'
db '58.69 '
db '58.6934'
db '63.546 '
db '65.39 ' ; 30
db '69.723 '