Subversion Repositories Kolibri OS

Compare Revisions

Ignore whitespace Rev 8707 → Rev 8717

/programs/other/period/trunk/period.asm
23,17 → 23,17
 
use32
 
org 0x0
db 'MENUET01' ; áâ ­¤ àâ­ë© 8-¡ ©â®¢ë© § £®«®¢®ª ¤«ï ¨á¯®«­ï¥¬ëå ä ©«®¢ MeOS
dd 0x01 ; ¢¥àá¨ï § £®«®¢ª 
dd START ; 㪠§ â¥«ì ­  ­ ç «® ¨á¯®«­ï¥¬®£® ª®¤ 
dd I_END ; à §¬¥à ®¡à § 
dd I_END+0x1000 ; âॡ㥬 ï ¯ ¬ïâì ¤«ï ¯à¨«®¦¥­¨ï
dd I_END+0x1000 ; 㪠§ â¥«ì ­  ­ ç «  á⥪ 
dd 0x0 , 0x0 ; I_Param , I_Icon
org 0x0
db 'MENUET01' ; áâ ­¤ àâ­ë© 8-¡ ©â®¢ë© § £®«®¢®ª ¤«ï ¨á¯®«­ï¥¬ëå ä ©«®¢ MeOS
dd 0x01 ; ¢¥àá¨ï § £®«®¢ª 
dd START ; 㪠§ â¥«ì ­  ­ ç «® ¨á¯®«­ï¥¬®£® ª®¤ 
dd I_END ; à §¬¥à ®¡à § 
dd I_END+0x1000 ; âॡ㥬 ï ¯ ¬ïâì ¤«ï ¯à¨«®¦¥­¨ï
dd I_END+0x1000 ; 㪠§ â¥«ì ­  ­ ç «  á⥪ 
dd 0x0 , 0x0 ; I_Param , I_Icon
 
;ƒ‹Ž€‹œ›… ……Œ…›… ˆ ŠŽ‘’€’›
re_ID dd 0x00000001 ;¤«ï åà ­¥­¨ï ­®¬¥à  ⥪ã饣® ¢ë¢®¤¨¬®£® í«¥¬¥­â 
re_ID dd 0x00000001 ;¤«ï åà ­¥­¨ï ­®¬¥à  ⥪ã饣® ¢ë¢®¤¨¬®£® í«¥¬¥­â 
 
START:
 
46,7 → 46,7
red:
call draw_window
 
still: ;®á­®¢­®© 横« ¯à®£à ¬¬ë
still: ;®á­®¢­®© 横« ¯à®£à ¬¬ë
push 10 ;®¦¨¤ ­¨¥ ᮡëâ¨ï
pop eax
mcall
57,19 → 57,19
jne button
 
key:
mov al,2
mcall
jmp still
mov al,2
mcall
jmp still
 
button:
mov al,17 ;¯®«ãç ¥¬ ID ­ ¦ â®© ª­®¯ª¨
mcall
shr eax,8 ; eax=24-¡¨â­ë© ButtonID
mov al,17 ;¯®«ãç ¥¬ ID ­ ¦ â®© ª­®¯ª¨
mcall
shr eax,8 ; eax=24-¡¨â­ë© ButtonID
 
cmp eax,1 ;­ ¦ â  «¨ "‡ ªàëâì" [x]
jne noclose
or eax,-1
mcall
cmp eax,1 ;­ ¦ â  «¨ "‡ ªàëâì" [x]
jne noclose
or eax,-1
mcall
 
noclose:
cmp eax,200
76,483 → 76,483
jne no_H
mov eax,1
no_H:
mov [re_ID],eax
mov [re_ID],eax
;; <mistifi(ator>
call draw_text
call draw_text
;; </mistifi(ator>
jmp still
jmp still
 
draw_window:
mov eax,12 ;begin drawing
xor ebx,ebx
inc ebx
mcall
; DRAW WINDOW
xor eax,eax
mov ebx,50*65536+555 ;x
mov ecx,30*65536+455 ;y
xor ebx,ebx
inc ebx
mcall
; DRAW WINDOW
xor eax,eax
mov ebx,50*65536+555 ;x
mov ecx,30*65536+455 ;y
mov edx,[sc.work]
or edx,0x34000000 ;style
mov edi,caption
mcall
or edx,0x34000000 ;style
mov edi,caption
mcall
 
text_in_window:
mov eax,4 ;¢ë¢®¤ ⥪áâ 
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
mov eax,4 ;¢ë¢®¤ ⥪áâ 
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
 
mov ebx,40*65536+200 ;« ­â ­®¨¤ë
mov edx,Lantanoid_text
mcall
mov ebx,40*65536+200 ;« ­â ­®¨¤ë
mov edx,Lantanoid_text
mcall
 
add ebx,20 ; ªâ¨­®¨¤ë
mov edx,Actinoid_text
mcall
add ebx,20 ; ªâ¨­®¨¤ë
mov edx,Actinoid_text
mcall
 
mov ebx,150*65536+255
mov edx,number
mcall
mov ebx,150*65536+255
mov edx,number
mcall
 
add ebx,15
mov edx,name
mcall
add ebx,15
mov edx,name
mcall
 
add ebx,15
mov edx,eng_name
mcall
add ebx,15
mov edx,eng_name
mcall
 
add ebx,15
mov edx,Atomic_massa
mcall
add ebx,15
mov edx,Atomic_massa
mcall
 
add ebx,15
mov edx,density
mcall
add ebx,15
mov edx,density
mcall
 
add ebx,15
mov edx,Step_okisl
mcall
add ebx,15
mov edx,Step_okisl
mcall
 
add ebx,15
mov edx,Electrootr
mcall
add ebx,15
mov edx,Electrootr
mcall
 
add ebx,15
mov edx,T_pl
mcall
add ebx,15
mov edx,T_pl
mcall
 
add ebx,15
mov edx,T_kip
mcall
add ebx,15
mov edx,T_kip
mcall
 
add ebx,15
mov edx,Raspr
mcall
add ebx,15
mov edx,Raspr
mcall
 
add ebx,15
mov edx,Otkrytie
mcall
add ebx,15
mov edx,Otkrytie
mcall
 
; ‚›‚Ž„ ŽŒ…Ž‚ …ˆŽ„Ž‚
mov ebx,30*65536+43
mov edx,Period_text ;1
mcall
; ‚›‚Ž„ ŽŒ…Ž‚ …ˆŽ„Ž‚
mov ebx,30*65536+43
mov edx,Period_text ;1
mcall
 
call @f ;2
call @f ;3
call @f ;4
call @f ;5
call @f ;6
call @f ;7
jmp Table
call @f ;2
call @f ;3
call @f ;4
call @f ;5
call @f ;6
call @f ;7
jmp Table
 
@@:
add ebx,20
add edx,4 ;â.ª. áâப  = 4 ¡ ©â ¬(á ­ã«ñ¬)
mcall
add ebx,20
add edx,4 ;â.ª. áâப  = 4 ¡ ©â ¬(á ­ã«ñ¬)
mcall
ret
 
Table: ;Žâà¨á®¢ª  â ¡«¨æë ¢ ¢¨¤¥ ª®­®¯®ç¥ª
table_row_1:
shl eax,1
mov ebx,50*65536+25
mov ecx,35*65536+20
mov edx,200
mov esi,0xE19123
mcall
He_:
mov ebx,491*65536+25
mov esi,0x0f0c314
mov edx,2
mcall
table_row_2:
Li:
mov ebx,50*65536+25
mov ecx,56*65536+20
mov esi,0xE19123
inc edx
mcall
Be:
mov ebx,76*65536+25
inc edx
mcall
B_:
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_2_loop:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_2_loop
table_row_3:
Na:
mov ebx,50*65536+25
mov ecx,77*65536+20
mov esi,0xE19123
inc edx
mcall
Table: ;Žâà¨á®¢ª  â ¡«¨æë ¢ ¢¨¤¥ ª®­®¯®ç¥ª
table_row_1:
shl eax,1
mov ebx,50*65536+25
mov ecx,35*65536+20
mov edx,200
mov esi,0xE19123
mcall
He_:
mov ebx,491*65536+25
mov esi,0x0f0c314
mov edx,2
mcall
table_row_2:
Li:
mov ebx,50*65536+25
mov ecx,56*65536+20
mov esi,0xE19123
inc edx
mcall
Be:
mov ebx,76*65536+25
inc edx
mcall
B_:
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_2_loop:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_2_loop
table_row_3:
Na:
mov ebx,50*65536+25
mov ecx,77*65536+20
mov esi,0xE19123
inc edx
mcall
 
mov ebx,76*65536+25
inc edx
mcall
mov ebx,76*65536+25
inc edx
mcall
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_3_loop:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_3_loop
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_3_loop:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_3_loop
 
Table_row_4:
K_:
mov ebx,50*65536+25
mov ecx,98*65536+20
mov esi,0xE19123
inc edx
mcall
Ca:
mov ebx,76*65536+25
inc edx
mcall
Sc:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edi,8
Table_row_4_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_4_loop1
Table_row_4:
K_:
mov ebx,50*65536+25
mov ecx,98*65536+20
mov esi,0xE19123
inc edx
mcall
Ca:
mov ebx,76*65536+25
inc edx
mcall
Sc:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edi,8
Table_row_4_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_4_loop1
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_4_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_4_loop2
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_4_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_4_loop2
 
Table_row_5:
Rb_:
mov ebx,50*65536+25
mov ecx,119*65536+20
mov esi,0xE19123
inc edx
mcall
Sr_:
mov ebx,76*65536+25
inc edx
mcall
Y_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edi,8
Table_row_5_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_5_loop1
Table_row_5:
Rb_:
mov ebx,50*65536+25
mov ecx,119*65536+20
mov esi,0xE19123
inc edx
mcall
Sr_:
mov ebx,76*65536+25
inc edx
mcall
Y_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edi,8
Table_row_5_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_5_loop1
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_5_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_5_loop2
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_5_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_5_loop2
 
Table_row_6:
Cs_:
mov ebx,50*65536+25
mov ecx,140*65536+20
mov esi,0xE19123
inc edx
mcall
Ba_:
mov ebx,76*65536+25
inc edx
mcall
La_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edx,71
mov edi,8
Table_row_6_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_6_loop1
Table_row_6:
Cs_:
mov ebx,50*65536+25
mov ecx,140*65536+20
mov esi,0xE19123
inc edx
mcall
Ba_:
mov ebx,76*65536+25
inc edx
mcall
La_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edx,71
mov edi,8
Table_row_6_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_6_loop1
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_6_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_6_loop2
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_6_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_6_loop2
 
Table_row_7:
Fr_:
mov ebx,50*65536+25
mov ecx,161*65536+20
mov esi,0xE19123
inc edx
mcall
Ra_:
mov ebx,76*65536+25
inc edx
mcall
Ac_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edx,103
mov edi,8
Table_row_7_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_7_loop1
Table_row_7:
Fr_:
mov ebx,50*65536+25
mov ecx,161*65536+20
mov esi,0xE19123
inc edx
mcall
Ra_:
mov ebx,76*65536+25
inc edx
mcall
Ac_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edx,103
mov edi,8
Table_row_7_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_7_loop1
 
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,2
table_row_7_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_7_loop2
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_7_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_7_loop2
 
row_1:
Cerium_:
mov ebx,102*65536+25
mov ecx,190*65536+20
mov edx,58
mov esi,0x73beeb
mcall
mov edi,12
row_1:
Cerium_:
mov ebx,102*65536+25
mov ecx,190*65536+20
mov edx,58
mov esi,0x73beeb
mcall
mov edi,12
 
row_1_loop:
add ebx,26*65536
inc edx
mcall
dec edi
jns row_1_loop
row_2:
dgfsfHe_:
mov ebx,102*65536+25
mov ecx,211*65536+20
mov edx,90
mcall
mov edi,12
row_2_loop:
row_1_loop:
add ebx,26*65536
inc edx
mcall
dec edi
jns row_1_loop
row_2:
dgfsfHe_:
mov ebx,102*65536+25
mov ecx,211*65536+20
mov edx,90
mcall
mov edi,12
row_2_loop:
 
add ebx,26*65536
inc edx
mcall
dec edi
jns row_2_loop
add ebx,26*65536
inc edx
mcall
dec edi
jns row_2_loop
 
text_on_buttons:
text_row1:
;H
shr eax,1
mov ebx,62*65536+43
mov ecx,0x00000000
mov edx,Symbols
mov esi,3
mcall
;Ne
mov ebx,500*65536+43
add edx,3
mcall
text_row2_1:
mov ebx,60*65536+63
add edx,3
mcall
text_row1:
;H
shr eax,1
mov ebx,62*65536+43
mov ecx,0x00000000
mov edx,Symbols
mov esi,3
mcall
;Ne
mov ebx,500*65536+43
add edx,3
mcall
text_row2_1:
mov ebx,60*65536+63
add edx,3
mcall
 
mov ebx,85*65536+63
add edx,3
mcall
text_row2_2:
mov ebx,374*65536+63
add edx,3
mcall
mov edi,4
mov ebx,85*65536+63
add edx,3
mcall
text_row2_2:
mov ebx,374*65536+63
add edx,3
mcall
mov edi,4
 
text_row2_2_loop:
add ebx,25*65536
add edx,3
mcall
text_row2_2_loop:
add ebx,25*65536
add edx,3
mcall
 
dec edi
jns text_row2_2_loop
text_row3_1:
mov ebx,60*65536+83
add edx,3
mcall
dec edi
jns text_row2_2_loop
text_row3_1:
mov ebx,60*65536+83
add edx,3
mcall
 
mov ebx,85*65536+83
add edx,3
mcall
text_row3_2:
mov ebx,374*65536+83
add edx,3
mcall
mov edi,4
text_row3_2_loop:
add ebx,25*65536
add edx,3
mcall
mov ebx,85*65536+83
add edx,3
mcall
text_row3_2:
mov ebx,374*65536+83
add edx,3
mcall
mov edi,4
text_row3_2_loop:
add ebx,25*65536
add edx,3
mcall
 
dec edi
jns text_row3_2_loop
text_row4:
mov ebx,60*65536+104
add edx,3
mcall
mov edi,16
text_row4_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row3_2_loop
text_row4:
mov ebx,60*65536+104
add edx,3
mcall
mov edi,16
text_row4_loop:
add ebx,26*65536
add edx,3
mcall
 
dec edi
jns text_row4_loop
text_row5:
mov ebx,60*65536+125
add edx,3
mcall
mov edi,16
text_row5_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row4_loop
text_row5:
mov ebx,60*65536+125
add edx,3
mcall
mov edi,16
text_row5_loop:
add ebx,26*65536
add edx,3
mcall
 
dec edi
jns text_row5_loop
text_row6:
mov ebx,60*65536+146
add edx,3
mcall
mov edi,16
text_row6_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row6_loop
text_row7:
mov ebx,60*65536+167
add edx,3
mcall
mov edi,9
text_row7_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row5_loop
text_row6:
mov ebx,60*65536+146
add edx,3
mcall
mov edi,16
text_row6_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row6_loop
text_row7:
mov ebx,60*65536+167
add edx,3
mcall
mov edi,11 ;9
text_row7_loop:
add ebx,26*65536
add edx,3
mcall
 
dec edi
jns text_row7_loop
mov edi,4
text_row7_loop2:
add ebx,24*65536
add edx,3
mcall
dec edi
jns text_row7_loop2
dec edi
jns text_row7_loop
mov edi,4
text_row7_loop2:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row7_loop2
 
text_row8:
mov ebx,111*65536+197
add edx,3
mcall
mov edi,12
text_row8:
mov ebx,111*65536+197
add edx,3
mcall
mov edi,12
 
text_row8_loop:
add ebx,26*65536
add edx,3
mcall
text_row8_loop:
add ebx,26*65536
add edx,3
mcall
 
dec edi
jns text_row8_loop
dec edi
jns text_row8_loop
 
text_row9:
mov ebx,111*65536+217
add edx,3
mcall
mov edi,12
text_row9:
mov ebx,111*65536+217
add edx,3
mcall
mov edi,12
 
text_row9_loop:
add ebx,26*65536
add edx,3
mcall
text_row9_loop:
add ebx,26*65536
add edx,3
mcall
 
dec edi
jns text_row9_loop
dec edi
jns text_row9_loop
 
;; <mistifi(ator> - ª®à®ç¥ ¢ë­®á¨¬ ¢ ®â¤¥«ì­ãî ¯à®æ¥¤ãàã
call draw_text
call draw_text
;; </mistifi(ator>
 
finish:
mov eax,12 ;end drawing
mov ebx,2
mcall
mov eax,12 ;end drawing
mov ebx,2
mcall
ret
 
draw_text:
570,91 → 570,91
;11 ¢ë¢®¤ ¨¬ñ­ ¯¥à¢®®âªà뢠⥫¥© [optmzd-mem]
 
;; <mistifi(ator> - § ªà áª , çâ®-¡ë ­¥ ¡ë«® ­ «®¦¥­¨ï ¯à¨ ¯à®à¨á®¢ª¥ ⥪áâ 
mov eax,13
mov ebx,320*65536+210
mov ecx,255*65536+(15*11)
mov edx,[sc.work]
mcall
mov eax,13
mov ebx,320*65536+210
mov ecx,255*65536+(15*11)
mov edx,[sc.work]
mcall
;; </mistifi(ator>
 
push edi ; çâ®¡ë ®¯â¨¬¨§¨à®¢ âì ¨§¬¥­¥­¨ï ebx
 
; 1 ¢ë¢®¤ ¯®à浪®¢®£® ­®¬¥à  [optmzd-mem]
mov ebx,0x30000 ;¢ë¢®¤¨âì 3 æ¨äàë
mov ecx,[re_ID]
mov edx,320*65536+255
xor esi,esi
mov eax,47
mcall
; 1 ¢ë¢®¤ ¯®à浪®¢®£® ­®¬¥à  [optmzd-mem]
mov ebx,0x30000 ;¢ë¢®¤¨âì 3 æ¨äàë
mov ecx,[re_ID]
mov edx,320*65536+255
xor esi,esi
mov eax,47
mcall
 
;‚ˆŒ€ˆ…! ‡„…‘œ ‡€„€ð’‘Ÿ –‚…’ ‚‘…ƒŽ Ž‘’€‹œŽƒŽ ’…Š‘’€! [ᤥ« ­® ¤«ï ᮪à é¥­¨ï ª®¤  ­  20 ¡ ©â :)))]
mov ecx,[sc.work_text] ; –‚…’
mov ecx,[sc.work_text] ; –‚…’
or ecx,0x80000000 ; asciiz
mov eax,4 ; íâ  äã­ªæ¨ï ¢ë§ë¢ ¥âáï 10 à §! â ª çâ® § ¯¨è¥¬ 1 à §
mov eax,4 ; íâ  äã­ªæ¨ï ¢ë§ë¢ ¥âáï 10 à §! â ª çâ® § ¯¨è¥¬ 1 à §
 
; 2 ¢ë¢®¤ “‘‘ŠŽ… €‡‚€ˆ… [optmzd-mem]
mov edi,Rus_nazv ;㪠§ â¥«ì ­  ­ ç «® ¬ áᨢ  㪠§ â¥«¥© ;)
mov ebx,320*65536+255 ;§¤¥áì ¢­®áïâáï ª®®à¤¨­ âë, ¤ «ìè¥ ¡ã¤¥â «¨èì add ebx,15
call out_asciiz_item
; 2 ¢ë¢®¤ “‘‘ŠŽ… €‡‚€ˆ… [optmzd-mem]
mov edi,Rus_nazv ;㪠§ â¥«ì ­  ­ ç «® ¬ áᨢ  㪠§ â¥«¥© ;)
mov ebx,320*65536+255 ;§¤¥áì ¢­®áïâáï ª®®à¤¨­ âë, ¤ «ìè¥ ¡ã¤¥â «¨èì add ebx,15
call out_asciiz_item
 
xor ecx,ecx ;color
; 3 ¢ë¢®¤  ­£«¨©áª®£® ­ §¢ ­¨ï [optmzd-spd]
mov edx,Elements
mov edi,[re_ID]
dec edi
mov esi,12 ;¤«¨­  áâப¨
imul edi,esi ;áç¨â ¥¬ 㪠§ â¥«ì ­  ­ã¦­ãî áâபã
add edx,edi
add ebx,15 ; 㢥«¨ç¨¢ ¥¬ y-ª®®à¤¨­ âã ⥪áâ  ­  15 ¯¨ªá¥«¥©
mcall
xor ecx,ecx ;color
; 3 ¢ë¢®¤  ­£«¨©áª®£® ­ §¢ ­¨ï [optmzd-spd]
mov edx,Elements
mov edi,[re_ID]
dec edi
mov esi,12 ;¤«¨­  áâப¨
imul edi,esi ;áç¨â ¥¬ 㪠§ â¥«ì ­  ­ã¦­ãî áâபã
add edx,edi
add ebx,15 ; 㢥«¨ç¨¢ ¥¬ y-ª®®à¤¨­ âã ⥪áâ  ­  15 ¯¨ªá¥«¥©
mcall
 
; 4 ¢ë¢®¤  â®¬­®© ¬ ááë [optmzd-spd]
mov edx,MassNo
mov edi,[re_ID]
dec edi
mov esi,7 ;¤«¨­  áâப¨
imul edi,esi ;áç¨â ¥¬ 㪠§ â¥«ì ­  ­ã¦­ãî áâபã
add edx,edi
add ebx,15
mcall
; 4 ¢ë¢®¤  â®¬­®© ¬ ááë [optmzd-spd]
mov edx,MassNo
mov edi,[re_ID]
dec edi
mov esi,7 ;¤«¨­  áâப¨
imul edi,esi ;áç¨â ¥¬ 㪠§ â¥«ì ­  ­ã¦­ãî áâபã
add edx,edi
add ebx,15
mcall
 
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
; 5 ¢ë¢®¤ ‹Ž’Ž‘’œ [optmzd-mem]
mov edi,Plotnost
call out_asciiz_item
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
; 5 ¢ë¢®¤ ‹Ž’Ž‘’œ [optmzd-mem]
mov edi,Plotnost
call out_asciiz_item
 
; 6 ¢ë¢®¤ ‘’……œ ŽŠˆ‘‹…ˆŸ [optmzd-mem]
mov edi,Step_ok
call out_asciiz_item
; 6 ¢ë¢®¤ ‘’……œ ŽŠˆ‘‹…ˆŸ [optmzd-mem]
mov edi,Step_ok
call out_asciiz_item
 
xor ecx,ecx ;color
; 7 ¢ë¢®¤ ‹…Š’ŽŽ’ˆ–€’…‹œŽ‘’œ [optmzd-spd]
mov edx,Electr
mov edi,[re_ID]
dec edi
mov esi,4 ;¤«¨­  áâப¨
shl edi,2
add edx,edi
add ebx,15
mcall
xor ecx,ecx ;color
; 7 ¢ë¢®¤ ‹…Š’ŽŽ’ˆ–€’…‹œŽ‘’œ [optmzd-spd]
mov edx,Electr
mov edi,[re_ID]
dec edi
mov esi,4 ;¤«¨­  áâப¨
shl edi,2
add edx,edi
add ebx,15
mcall
 
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
; 8 ¢ë¢®¤ ’…Œ…€’“€ ‹€‚‹…ˆŸ [optmzd-mem]
mov edi,T_plavl
call out_asciiz_item
mov ecx,0x80000000 ;asciiz, –‚…’ !!!
; 8 ¢ë¢®¤ ’…Œ…€’“€ ‹€‚‹…ˆŸ [optmzd-mem]
mov edi,T_plavl
call out_asciiz_item
 
; 9 ¢ë¢®¤ ’…Œ…€’“€ Šˆ…ˆŸ [optmzd-mem]
mov edi,T_kipen
call out_asciiz_item
; 9 ¢ë¢®¤ ’…Œ…€’“€ Šˆ…ˆŸ [optmzd-mem]
mov edi,T_kipen
call out_asciiz_item
 
;10 ¢ë¢®¤ €‘…„…‹…ˆ… ‚ ‡…ŒŽ‰ ŠŽ… [optmzd-mem]
mov edi,Rasprostr
call out_asciiz_item
;10 ¢ë¢®¤ €‘…„…‹…ˆ… ‚ ‡…ŒŽ‰ ŠŽ… [optmzd-mem]
mov edi,Rasprostr
call out_asciiz_item
 
;11 ¢ë¢®¤ ¨¬ñ­ ¯¥à¢®®âªà뢠⥫¥© [optmzd-mem]
mov edi,First_Explore
call out_asciiz_item
;11 ¢ë¢®¤ ¨¬ñ­ ¯¥à¢®®âªà뢠⥫¥© [optmzd-mem]
mov edi,First_Explore
call out_asciiz_item
 
pop edi ; ®­ ¡ë« á®åà ­ñ­ ¢ ­ ç «¥ :)
ret
661,12 → 661,12
 
;äã­ªæ¨ï ¢ë¯®«­ï¥â ­ ¡®à ¤¥©á⢨© ¤«ï ¢ë¢®¤  ¨­ä®à¬ æ¨¨
out_asciiz_item:
mov edx,[re_ID]
dec edx
shl edx,2 ;㬭®¦¨âì ­  4 (à §¬¥à 㪠§ â¥«ï)
mov edx,[edx+edi] ;㪠§ â¥«ì ­  áâப㠢 edx
add ebx,15
mcall
mov edx,[re_ID]
dec edx
shl edx,2 ;㬭®¦¨âì ­  4 (à §¬¥à 㪠§ â¥«ï)
mov edx,[edx+edi] ;㪠§ â¥«ì ­  áâப㠢 edx
add ebx,15
mcall
ret
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
675,18 → 675,18
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;---- begin ---- „ ­­ë¥ ¤«ï ƒ‹€‚ŽƒŽ ®ª­  --------------------------
caption db '¥à¨®¤¨ç¥áª ï á¨á⥬  „.ˆ.Œ¥­¤¥«¥¥¢  by navanax & Johnny_B',0
caption db '¥à¨®¤¨ç¥áª ï á¨á⥬  „.ˆ.Œ¥­¤¥«¥¥¢  by navanax & Johnny_B',0
density db '«®â­®áâì',0
Atomic_massa db '€â®¬­ ï ¬ áá ',0
name db ' §¢ ­¨¥',0
eng_name db '€­£«. ­ §¢ ­¨¥',0
T_pl db '’¥¬¯¥à âãà  ¯«.',0
T_kip db '’¥¬¯¥à âãà  ª¨¯.',0
Electrootr db '«¥ªâà®®âà¨æ â¥«ì­®áâì',0
Raspr db ' á¯à¥¤¥«¥­¨¥ ¢ §¥¬­. ª®à¥',0
Step_okisl db '‘⥯¥­ì ®ª¨á«¥­¨ï',0
Otkrytie db 'Žâªàë⨥',0
number db '®à浪®¢ë© ­®¬¥à',0
Atomic_massa db '€â®¬­ ï ¬ áá ',0
name db ' §¢ ­¨¥',0
eng_name db '€­£«. ­ §¢ ­¨¥',0
T_pl db '’¥¬¯¥à âãà  ¯«.',0
T_kip db '’¥¬¯¥à âãà  ª¨¯.',0
Electrootr db '«¥ªâà®®âà¨æ â¥«ì­®áâì',0
Raspr db ' á¯à¥¤¥«¥­¨¥ ¢ §¥¬­. ª®à¥',0
Step_okisl db '‘⥯¥­ì ®ª¨á«¥­¨ï',0
Otkrytie db 'Žâªàë⨥',0
number db '®à浪®¢ë© ­®¬¥à',0
Period_text:
db ' I',0
db ' II',0
708,7 → 708,7
;çâ®¡ë ­¥ ¡ë«® ¢ë室  §  ¥£® ¯à¥¤¥«ë
 
;€­£«¨©áª®¥ ­ §¢ ­¨¥
Elements: ;116 í«¥¬¥­â®¢
Elements: ;116 í«¥¬¥­â®¢
db 'Hydrogen ' ; 1
db 'Helium '
db 'Lithium '
825,6 → 825,8
db 'Flerovium '
db 'Moscovium '
db 'Livermorium ' ;116
db 'Tennessine '
db 'Oganesson '
 
 
;---------------------------------
918,6 → 920,10
db 'Fi '
db 'Mc '
db 'Lv '
;
db 'Ts '
db 'Og '
;
db 'Ce '
db 'Pr '
db 'Nd '
948,8 → 954,8
db 'Lr '
 
;€’ŽŒ€Ÿ Œ€‘‘€
MassNo: ;116 í«¥¬¥­â®¢
db '1.00794' ; 1
MassNo: ;116 í«¥¬¥­â®¢
db '1.00794' ; 1
db '4.0026 '
db '6.941 '
db '9.01218'
958,7 → 964,7
db '14.0067'
db '15.9994'
db '18.9984'
db '20.179 ' ; 10
db '20.179 ' ; 10
db '22.9898'
db '24.305 '
db '26.9815'
968,7 → 974,7
db '35.453 '
db '39.948 '
db '39.0983'
db '40.078 ' ; 20
db '40.078 ' ; 20
db '44.9559'
db '47.88 '
db '50.9415'
978,7 → 984,7
db '58.9332'
db '58.6934'
db '63.546 '
db '65.39 ' ; 30
db '65.39 ' ; 30
db '69.723 '
db '72.61 '
db '74.922 '
988,7 → 994,7
db '85.47 '
db '87.62 '
db '88.906 '
db '91.224 ' ; 40
db '91.224 ' ; 40
db '92.906 '
db '95.94 '
db '(98) '
998,7 → 1004,7
db '107.868'
db '112.41 '
db '114.82 '
db '118.71 ' ; 50
db '118.71 ' ; 50
db '121.75 '
db '127.60 '
db '126.90 '
1008,7 → 1014,7
db '138.91 '
db '140.12 '
db '140.91 '
db '144.24 ' ; 60
db '144.24 ' ; 60
db '(147) '
db '150.36 '
db '151.96 '
1018,7 → 1024,7
db '164.93 '
db '167.26 '
db '168.93 '
db '173.04 ' ; 70
db '173.04 ' ; 70
db '174.97 '
db '178.49 '
db '180.95 '
1028,7 → 1034,7
db '192.22 '
db '195.08 '
db '196.97 '
db '200.59 ' ; 80
db '200.59 ' ; 80
db '204.38 '
db '207.19 '
db '208.98 '
1038,7 → 1044,7
db '(223) '
db '(226) '
db '(227) '
db '232.04 ' ; 90
db '232.04 ' ; 90
db '(231) '
db '238.029'
db '(237) '
1048,7 → 1054,7
db '(247) '
db '(251) '
db '(254) '
db '(257) ' ; 100
db '(257) ' ; 100
db '(258) '
db '(259) '
db '(262) ' ;103
1058,13 → 1064,16
db '(264) '
db '(269) '
db '(268) '
db '(271) ' ; 110
db '(271) ' ; 110
db '(272) '
db '(285) '
db '(284) '
db '(289) '
db '(288) '
db '(292) ' ;116
db '(292) ' ;116
;
db '294,210'
db '294,214'
 
 
;-----------------------
1090,7 → 1099,7
db '2,83'
db '3,20'
db '0,91'
db '1,04' ; 20
db '1,04' ; 20
db '1,20'
db '1,32'
db '1,45'
1110,7 → 1119,7
db '0,89'
db '0,99'
db '1,11'
db '1,22' ;40
db '1,22' ;40
db '1,6 '
db '2,16'
db '1,9 '
1187,7 → 1196,10
db '??? '
db '??? '
db '??? ' ; 116
db '??? '
dd '??? '
 
 
;-----------------------
 
;’…Œ…€’“€ ‹€‚‹…ˆŸ 116 í«¥¬¥­â®¢
1211,7 → 1223,7
"-101,03", \
"-189,34", \
"63,51", \
"842", \ ;20
"842", \ ;20
"1541", \
"1658", \
"1920", \
1231,7 → 1243,7
"39,3", \
"768", \
"1528", \
"1855", \ ;40
"1855", \ ;40
"2470", \
"2620", \
"2250", \
1271,7 → 1283,7
"2443", \
"1772", \
"1064,43", \
"-38,862", \ ;80
"-38,862", \ ;80
"303,6", \
"327,502", \
"271,44", \
1307,10 → 1319,11
"???", \
"???", \
"???", \
"???" ; 116
"???", \ ; 116
"???", \
"???"
 
 
 
;-----------------------
 
;’…Œ…€’“€ Šˆ…ˆŸ 116 í«¥¬¥­â®¢
1334,7 → 1347,7
"-34,1", \
"-185,86", \
"760", \
"1495", \ ;20
"1495", \ ;20
"2850", \
"3260", \
"3450", \
1354,7 → 1367,7
"696", \
"1390", \
"3320", \
"4340", \ ;40
"4340", \ ;40
"4927", \
"4630", \
"4630", \
1424,18 → 1437,20
"???", \
"???", \
"???", \
"???", \ ; 110
"???", \ ; 110
"???", \
"???", \
"???", \
"???", \
"???", \
"???" ; 116
"???", \ ; 116
"345 - 230", \
"80 (+-30)"
 
 
;ãá᪮¥ ­ §¢ ­¨¥ ; 116 í«¥¬¥­â®¢
strtbl Rus_nazv, \
"‚®¤®à®¤", \ ;1
"‚®¤®à®¤", \ ;1
"ƒ¥«¨©", \
"‹¨â¨©", \
"¥à¨««¨©", \
1444,7 → 1459,7
"€§®â", \
"Š¨á«®à®¤", \
"”â®à", \
"¥®­", \ ;10
"¥®­", \ ;10
" â਩", \
"Œ £­¨©", \
"€«î¬¨­¨©", \
1464,7 → 1479,7
"Š®¡ «ìâ", \
"¨ª¥«ì", \
"Œ¥¤ì", \
"–¨­ª", \ ;30
"–¨­ª", \ ;30
"ƒ ««¨©", \
"ƒ¥à¬ ­¨©", \
"Œëèìïª", \
1484,7 → 1499,7
"‘¥à¥¡à®", \
"Š ¤¬¨©", \
"ˆ­¤¨©", \
"Ž«®¢®", \ ;50
"Ž«®¢®", \ ;50
"‘ãà쬠", \
"’¥««ãà", \
"‰®¤", \
1504,7 → 1519,7
"ƒ®«ì¬¨©", \
"à¡¨©", \
"’㫨©", \
"ˆââ¥à¡¨©", \ ;70
"ˆââ¥à¡¨©", \ ;70
"‹îâ¥æ¨©", \
"ƒ ä­¨©", \
"’ ­â «", \
1527,7 → 1542,7
"’®à¨©",\
"à®â ªâ¨­¨©",\
"“à ­",\
"¥¯âã­¨©", \ ;90
"¥¯âã­¨©", \ ;90
"«ãâ®­¨©", \
"€¬¥à¨æ¨©", \
"Šî਩", \
1547,10 → 1562,12
"„ à¬è⠤⨩", \ ;110
"¥­â£¥­¨©", \
"Š®¯¥à­¨æ¨©", \
"¨å®­¨©", \
"¨å®­¨©", \
"”«¥à®¢¨©", \
"Œ®áª®¢¨©", \
"‹¨¢¥à¬®à¨©" ;116
"‹¨¢¥à¬®à¨©", \ ;116
"’¥­­¥áᨭ", \
"Ž£ ­¥á®­"
 
 
;¥à¢®®âªà뢠⥫¨ ; 116 í«¥¬¥­â®¢
1670,12 → 1687,14
"­¥ ®âªàëâ",\
"“çñ­ë¥ ®áᨨ, 1998",\
"­¥ ®âªàëâ",\
"ž.–.Ž£ ­¥ááï­, ‚.Š.“⥭ª®¢, 2000"
"ž.–.Ž£ ­¥ááï­, ‚.Š.“⥭ª®¢, 2000", \
"ŽˆŸˆ ¢ £.„ã¡­ ", \
"ŽˆŸˆ ¨ ‹¨¢¥à¬®àáª ï « ¡®à â®à¨ï"
 
 
; «®â­®áâì 116 í«¥¬¥­â®¢
strtbl Plotnost, \
"-", \ ; 1
"-", \ ; 1
"-", \
"535", \
"1848", \
1685,7 → 1704,7
"-", \
"-", \
"0,90035 £/«", \
"968", \ ; 10
"968", \ ; 10
"1738", \
"2700", \
"2330", \
1695,7 → 1714,7
"1,7837 £/«", \
"856", \
"1550", \
"2985", \ ; 20
"2985", \ ; 20
"4507", \
"6110", \
"7140", \
1705,7 → 1724,7
"8908", \
"8920", \
"7140", \
"5904", \ ; 30
"5904", \ ; 30
"5323", \
"5727", \
"4819", \
1715,7 → 1734,7
"2630", \
"4472", \
"6511", \
"8570", \ ; 40
"8570", \ ; 40
"10280", \
"11500", \
"12370", \
1725,7 → 1744,7
"8650", \
"7310", \
"7310", \
"6697", \ ; 50
"6697", \ ; 50
"6240", \
"4940", \
"5,851 £/«", \
1735,7 → 1754,7
"6689", \
"6640", \
"6800", \
"7264", \ ; 60
"7264", \ ; 60
"7353", \
"5244", \
"7901", \
1745,7 → 1764,7
"9066", \
"9321", \
"6570", \
"9841", \ ; 70
"9841", \ ; 70
"13310", \
"16650", \
"19250", \
1755,7 → 1774,7
"21090", \
"19300", \
"-", \
"11850", \ ; 80
"11850", \ ; 80
"11340", \
"9780", \
"9196", \
1765,7 → 1784,7
"5000", \
"10070", \
"11724", \
"15370", \ ; 90
"15370", \ ; 90
"19050", \
"20450", \
"19816", \
1775,7 → 1794,7
"15100", \
"-", \
"-", \
"-", \ ; 100
"-", \ ; 100
"-", \
"-", \
"-", \
1785,18 → 1804,20
"-", \
"-", \
"-", \
"-", \ ; 110
"-", \ ; 110
"-", \
"-", \
"-", \
"-", \
"-", \
"-" ; 116
"-", \ ; 116
"-", \
"4,9 - 5,1 "
 
 
;€‘Ž‘’€…ˆ… ‚ ‡…ŒŽ‰ ŠŽ… 116 í«¥¬¥­â®¢
strtbl Rasprostr, \
"0,14 %", \ ; 1
"0,14 %", \ ; 1
"¬¥­¥¥ 0,0015 %", \
"0,0030 %", \
"0,0006 %", \
1805,7 → 1826,7
"0,0046 %", \
"46,60 %", \
"0,070 %", \
"0,00007 £/â", \ ; 10
"0,00007 £/â", \ ; 10
"2,83 %", \
"2,09 %", \
"8,13 %", \
1815,7 → 1836,7
"0,020 %", \
"0,000004 %", \
"2,59 %", \
"3,63 %", \ ; 20
"3,63 %", \ ; 20
"0,001 %", \
"0,57 %", \
"0,0110 %", \
1825,7 → 1846,7
"0,0023 %", \
"0,0080 %", \
"0,0045 %", \
"0,0065 %", \ ; 30
"0,0065 %", \ ; 30
"0,0015 %", \
"0,00015 %", \
"0,00017 %", \
1835,7 → 1856,7
"0,0120 %", \
"???", \
"0,0040 %", \
"0,0160 %", \ ; 40
"0,0160 %", \ ; 40
"0,0024 %", \
"0,0003 %", \
"-", \
1846,7 → 1867,7
"0,0000135 %", \
"0,00001 %", \
"0,008 %", \
"0,00005 %", \ ; 50
"0,00005 %", \ ; 50
"0,000001 %", \
"0,00004 %", \
"0,000039 % (¢  â¬®áä¥à¥)", \
1856,7 → 1877,7
"0,007 %", \
"0,0007 %", \
"0,0025 %", \
"-", \ ; 60
"-", \ ; 60
"0,0007 %", \
"0,00013 %", \
"0,00054 %", \
1866,7 → 1887,7
"0,00033 %", \
"0,000027 %", \
"0,000033 %", \
"0,00008 %", \ ; 70
"0,00008 %", \ ; 70
"0,0003 - 0,0004 %", \
"0,00025 %", \
"0,0001 %", \
1876,7 → 1897,7
"0,0000005 %", \
"0,00000043 %", \
"0,000007 %", \
"0,0003 %", \ ; 80
"0,0003 %", \ ; 80
"0,0015 %", \
"0,00002 %", \
"0,00000000000002 %", \
1886,7 → 1907,7
"0,0000000001 %", \
"0,0000000006 %", \
"0,0008 %", \
"-", \ ; 90
"-", \ ; 90
"0,0003 %", \
"-", \
"-", \
1896,7 → 1917,7
"-", \
"-", \
"-", \
"-", \ ; 100
"-", \ ; 100
"-", \
"-", \
"-", \
1906,17 → 1927,19
"-", \
"-", \
"-", \
"-", \ ; 110
"-", \ ; 110
"-", \
"-", \
"-", \
"-", \
"-" ; 116
"-", \ ; 116
"-", \
"-"
 
 
; á⥯¥­ì ®ª¨á«¥­¨ï 116 í«¥¬¥­â®¢
strtbl Step_ok, \
"+1 -1", \ ; 1
"+1 -1", \ ; 1
"-", \
"+1", \
"+2 (+1)", \
1925,7 → 1948,7
"®â +5 ¤® -3 ", \
"+4 -4", \
"-1", \
"-", \ ; 10
"-", \ ; 10
"+1", \
"+2 (+1)", \
"+3 (+1 +2)", \
1935,7 → 1958,7
"-1 +1 +3 +5 +7", \
"-", \
"+1", \
"+2 (+1)", \ ; 20
"+2 (+1)", \ ; 20
"+3 (+1 +2)", \
"+4 +2 +3", \
"®â +2 ¤® +5", \
1945,7 → 1968,7
"+2 +3 (+1 +4 +5)", \
"+2 (+1 +3 +4)", \
"+1 +2 (+3 +4)", \
"+2", \ ; 30
"+2", \ ; 30
"+1 +3", \
"+4 +3 +2 +1", \
"+5 +3 -3", \
1955,7 → 1978,7
"+1", \
"+2 (+1)", \
"+3", \
"+4 (+1 +2 +3)", \ ; 40
"+4 (+1 +2 +3)", \ ; 40
"+5 (+1 +2 +3 +4)", \
"®â +2 ¤® +6", \
"®â -1 ¤® +7", \
1965,7 → 1988,7
"+1 +2 +3", \
"+2 (+1)", \
"+3 (+1)", \
"+2 +4", \ ; 50
"+2 +4", \ ; 50
"+3 +5 (-3)", \
"-2 +6 +4 (+2)", \
"-1 +1 +3 +5 +7", \
1975,7 → 1998,7
"+3", \
"+3 (+4)", \
"+4 +3 (+2)", \
"+4 +3 (+2)", \ ; 60
"+4 +3 (+2)", \ ; 60
"+3", \
"+2 +3 (+2)", \
"+3 +2", \
1985,7 → 2008,7
"+3 (+2)", \
"+3 (+1)", \
"+3 +2 (+4)", \
"+2 +3", \ ; 70
"+2 +3", \ ; 70
"+3", \
"+4 (+3 +2)", \
"+5 (+2 +3 +4)", \
1995,7 → 2018,7
"+4 +3 +1 +2 +6", \
"+4 +3 +2 (+5 +6)", \
"+1 +3 (+5)", \
"+2 +1", \ ; 80
"+2 +1", \ ; 80
"+1 +3", \
"+1 +4 +2", \
"+3 +5 -3 (+1 +2)", \
2005,7 → 2028,7
"+1", \
"+2", \
"+3", \
"+4 (+2 +3)", \ ; 90
"+4 (+2 +3)", \ ; 90
"+4 +5 (+3)", \
"®â +2 ¤® +6", \
"+3 +4 +5 (+6 +7)", \
2015,7 → 2038,7
"+3 (+4)", \
"+2 +3 (+4)", \
"+2 +3", \
"+2 +3", \ ; 100
"+2 +3", \ ; 100
"+1 +2 +3", \
"+2 +3", \
"+3", \
2025,12 → 2048,14
"-", \
"-", \
"-", \
"-", \ ; 110
"-", \ ; 110
"-", \
"-", \
"-", \
"-", \
"-", \
"-" ; 116
"-", \ ; 116
"-", \
"-1, 0, +1, +2, +4, +6"
I_END:
sc system_colors