All: Update locale codes (Part 2) #76
@ -8,5 +8,5 @@
|
|||||||
|
|
||||||
; Éste archivo debe ser editado con codificación CP866
|
; Éste archivo debe ser editado con codificación CP866
|
||||||
|
|
||||||
version cp850 'KolibriOS versión 0.7.7.0+ ',13,10,13,10,0
|
version cp850 'KolibriOS versión 0.7.7.0 ',13,10,13,10,0 ; FIXME: Get distribution version from git tag
|
||||||
diff16 "fin del código del kernel",0,$
|
diff16 "fin del código del kernel",0,$
|
||||||
|
@ -1,459 +1,460 @@
|
|||||||
;
|
;
|
||||||
; ”ãªæ¨¨ ¤«ï ¯à¥®¡à §®¢ ¨ï ä ©« *.stl ¢ *.3ds
|
; ”ãªæ¨¨ ¤«ï ¯à¥®¡à §®¢ ¨ï ä ©« *.stl ¢ *.3ds
|
||||||
;
|
;
|
||||||
; ‘âàãªâãà ᮧ¤ ¢ ¥¬®£® ä ©« *.3ds:
|
; ‘âàãªâãà ᮧ¤ ¢ ¥¬®£® ä ©« *.3ds:
|
||||||
; CHUNK_MAIN (40+n+v+f)
|
; CHUNK_MAIN (40+n+v+f)
|
||||||
; + CHUNK_OBJMESH (34+n+v+f)
|
; + CHUNK_OBJMESH (34+n+v+f)
|
||||||
; + CHUNK_OBJBLOCK (28+n+v+f)
|
; + CHUNK_OBJBLOCK (28+n+v+f)
|
||||||
; + CHUNK_TRIMESH (22+v+f)
|
; + CHUNK_TRIMESH (22+v+f)
|
||||||
; + CHUNK_VERTLIST (8+v)
|
; + CHUNK_VERTLIST (8+v)
|
||||||
; + CHUNK_FACELIST (8+f)
|
; + CHUNK_FACELIST (8+f)
|
||||||
;
|
;
|
||||||
; ¢ ᪮¡ª å 㪠§ ë à §¬¥àë ¡«®ª®¢:
|
; ¢ ᪮¡ª å 㪠§ ë à §¬¥àë ¡«®ª®¢:
|
||||||
; n - ¯ ¬ïâì ¤«ï ¨¬¥¨ ®¡ê¥ªâ
|
; n - ¯ ¬ïâì ¤«ï ¨¬¥¨ ®¡ê¥ªâ
|
||||||
; v - ¯ ¬ïâì ¤«ï ¢¥àè¨
|
; v - ¯ ¬ïâì ¤«ï ¢¥àè¨
|
||||||
; f - ¯ ¬ïâì ¤«ï £à ¥©
|
; f - ¯ ¬ïâì ¤«ï £à ¥©
|
||||||
|
|
||||||
; ”®à¬ â ¡¨ ண® *.stl:
|
; ”®à¬ â ¡¨ ண® *.stl:
|
||||||
; char[80] - § £®«®¢®ª
|
; char[80] - § £®«®¢®ª
|
||||||
; uint32 - ç¨á«® £à ¥©
|
; uint32 - ç¨á«® £à ¥©
|
||||||
; ¤«ï ª ¦¤®© £à ¨:
|
; ¤«ï ª ¦¤®© £à ¨:
|
||||||
; float[3] - ¢¥ªâ®à ®à¬ «¨
|
; float[3] - ¢¥ªâ®à ®à¬ «¨
|
||||||
; float[9] - ¢¥àè¨ë 1,2,3
|
; float[9] - ¢¥àè¨ë 1,2,3
|
||||||
; uint16 - âਡãâë
|
; uint16 - âਡãâë
|
||||||
|
|
||||||
|
; Language support for locales: ru_RU (CP866), en_US.
|
||||||
if lang eq ru_RU
|
|
||||||
txt_err_stl_open:
|
if lang eq ru_RU
|
||||||
db '"STL',13,10
|
txt_err_stl_open:
|
||||||
db '” ©« *.stl ®ç¥ì ¡®«ì让." -tW',0
|
db '"STL',13,10
|
||||||
txt_err_stl_null_v:
|
db '” ©« *.stl ®ç¥ì ¡®«ì让." -tW',0
|
||||||
db '"STL',13,10
|
txt_err_stl_null_v:
|
||||||
db '‚¥àè¨ë ¥ ©¤¥ë." -tE',0
|
db '"STL',13,10
|
||||||
else
|
db '‚¥àè¨ë ¥ ©¤¥ë." -tE',0
|
||||||
txt_err_stl_open:
|
else ; Default to en_US
|
||||||
db '"STL',13,10
|
txt_err_stl_open:
|
||||||
db 'File *.stl is very large." -tW',0
|
db '"STL',13,10
|
||||||
txt_err_stl_null_v:
|
db 'File *.stl is very large." -tW',0
|
||||||
db '"STL',13,10
|
txt_err_stl_null_v:
|
||||||
db 'Vertexes not found." -tE',0
|
db '"STL',13,10
|
||||||
end if
|
db 'Vertexes not found." -tE',0
|
||||||
|
end if
|
||||||
;output:
|
|
||||||
; eax - 㪠§ ⥫ì áä®à¬¨à®¢ ë© ä ©« 3ds (¢ á«ãç ¥ ¥ã¤ ç¨ 0)
|
;output:
|
||||||
; ecx - à §¬¥à áä®à¬¨à®¢ ®£® ä ©« 3ds
|
; eax - 㪠§ ⥫ì áä®à¬¨à®¢ ë© ä ©« 3ds (¢ á«ãç ¥ ¥ã¤ ç¨ 0)
|
||||||
align 4
|
; ecx - à §¬¥à áä®à¬¨à®¢ ®£® ä ©« 3ds
|
||||||
proc convert_stl_3ds uses ebx edx edi esi, f_data:dword, f_size:dword
|
align 4
|
||||||
locals
|
proc convert_stl_3ds uses ebx edx edi esi, f_data:dword, f_size:dword
|
||||||
c_mem dd ? ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ¨ï (convert memory)
|
locals
|
||||||
c_size dd ? ;à §¬¥à ¯ ¬ï⨠¤«ï ¯à¥®¡à §®¢ ¨© (convert memory size)
|
c_mem dd ? ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ¨ï (convert memory)
|
||||||
vert_c dd ? ;ç¨á«® ¢¥àè¨ (vertex count)
|
c_size dd ? ;à §¬¥à ¯ ¬ï⨠¤«ï ¯à¥®¡à §®¢ ¨© (convert memory size)
|
||||||
face_c dd ? ;ç¨á«® £à ¥© (faces count)
|
vert_c dd ? ;ç¨á«® ¢¥àè¨ (vertex count)
|
||||||
endl
|
face_c dd ? ;ç¨á«® £à ¥© (faces count)
|
||||||
xor eax,eax
|
endl
|
||||||
mov esi,[f_data]
|
xor eax,eax
|
||||||
cmp dword[esi],'soli'
|
mov esi,[f_data]
|
||||||
jne .bin_stl
|
cmp dword[esi],'soli'
|
||||||
cmp word[esi+4],'d '
|
jne .bin_stl
|
||||||
jne .bin_stl
|
cmp word[esi+4],'d '
|
||||||
|
jne .bin_stl
|
||||||
jmp @f
|
|
||||||
.bin_stl:
|
jmp @f
|
||||||
;¯à®¢¥à塞 ä ©« ¡¨ àë© ä®à¬ â
|
.bin_stl:
|
||||||
mov ecx,[esi+80]
|
;¯à®¢¥à塞 ä ©« ¡¨ àë© ä®à¬ â
|
||||||
imul ecx,50
|
mov ecx,[esi+80]
|
||||||
add ecx,84 ;§ £®«®¢®ª
|
imul ecx,50
|
||||||
cmp ecx,[f_size]
|
add ecx,84 ;§ £®«®¢®ª
|
||||||
jne .no_stl
|
cmp ecx,[f_size]
|
||||||
call convert_binary_stl
|
jne .no_stl
|
||||||
jmp .no_stl
|
call convert_binary_stl
|
||||||
@@:
|
jmp .no_stl
|
||||||
|
@@:
|
||||||
;¢ ç «¥ ©¤¥® 'solid '
|
|
||||||
stdcall txt_next_line, 80
|
;¢ ç «¥ ©¤¥® 'solid '
|
||||||
|
stdcall txt_next_line, 80
|
||||||
mov eax,[f_data]
|
|
||||||
sub eax,esi
|
mov eax,[f_data]
|
||||||
add eax,[f_size]
|
sub eax,esi
|
||||||
stdcall get_stl_vertex_count, esi,eax
|
add eax,[f_size]
|
||||||
or eax,eax
|
stdcall get_stl_vertex_count, esi,eax
|
||||||
jnz @f
|
or eax,eax
|
||||||
notify_window_run txt_err_stl_null_v
|
jnz @f
|
||||||
jmp .no_stl
|
notify_window_run txt_err_stl_null_v
|
||||||
@@:
|
jmp .no_stl
|
||||||
cmp eax,0xffff
|
@@:
|
||||||
jle @f
|
cmp eax,0xffff
|
||||||
notify_window_run txt_err_stl_open
|
jle @f
|
||||||
mov eax,0xffff
|
notify_window_run txt_err_stl_open
|
||||||
@@:
|
mov eax,0xffff
|
||||||
|
@@:
|
||||||
mov [vert_c],eax
|
|
||||||
mov ecx,3
|
mov [vert_c],eax
|
||||||
xor edx,edx
|
mov ecx,3
|
||||||
div ecx
|
xor edx,edx
|
||||||
mov [face_c],eax
|
div ecx
|
||||||
shl eax,3
|
mov [face_c],eax
|
||||||
mov ecx,[vert_c]
|
shl eax,3
|
||||||
imul ecx,12
|
mov ecx,[vert_c]
|
||||||
lea ecx,[ecx+eax+40]
|
imul ecx,12
|
||||||
lea edx,[esi-6]
|
lea ecx,[ecx+eax+40]
|
||||||
sub edx,[f_data]
|
lea edx,[esi-6]
|
||||||
cmp edx,2
|
sub edx,[f_data]
|
||||||
jge @f
|
cmp edx,2
|
||||||
mov edx,2 ;¬¨¨¬ «ìë© à §¬¥à ¤«ï ¨¬¥¨ ®¡ê¥ªâ
|
jge @f
|
||||||
@@:
|
mov edx,2 ;¬¨¨¬ «ìë© à §¬¥à ¤«ï ¨¬¥¨ ®¡ê¥ªâ
|
||||||
add ecx,edx ;for object name
|
@@:
|
||||||
mov [c_size],ecx
|
add ecx,edx ;for object name
|
||||||
stdcall mem.Alloc,ecx
|
mov [c_size],ecx
|
||||||
mov [c_mem],eax
|
stdcall mem.Alloc,ecx
|
||||||
mov ebx,eax
|
mov [c_mem],eax
|
||||||
|
mov ebx,eax
|
||||||
mov word[ebx],CHUNK_MAIN
|
|
||||||
mov dword[ebx+2],ecx
|
mov word[ebx],CHUNK_MAIN
|
||||||
add ebx,6
|
mov dword[ebx+2],ecx
|
||||||
|
add ebx,6
|
||||||
;3d3d
|
|
||||||
mov word[ebx],CHUNK_OBJMESH
|
;3d3d
|
||||||
sub ecx,6
|
mov word[ebx],CHUNK_OBJMESH
|
||||||
mov dword[ebx+2],ecx
|
sub ecx,6
|
||||||
add ebx,6
|
mov dword[ebx+2],ecx
|
||||||
|
add ebx,6
|
||||||
;4000
|
|
||||||
mov word[ebx],CHUNK_OBJBLOCK
|
;4000
|
||||||
sub ecx,6
|
mov word[ebx],CHUNK_OBJBLOCK
|
||||||
mov dword[ebx+2],ecx
|
sub ecx,6
|
||||||
add ebx,6
|
mov dword[ebx+2],ecx
|
||||||
|
add ebx,6
|
||||||
push ecx esi
|
|
||||||
mov ecx,edx
|
push ecx esi
|
||||||
mov edi,ebx
|
mov ecx,edx
|
||||||
mov esi,[f_data]
|
mov edi,ebx
|
||||||
add esi,6 ;¯à®¯ã᪠¥¬ 'solid '
|
mov esi,[f_data]
|
||||||
rep movsb ;ª®¯¨à㥬 ¨¬ï ®¡ê¥ªâ
|
add esi,6 ;¯à®¯ã᪠¥¬ 'solid '
|
||||||
mov byte[edi-1],0
|
rep movsb ;ª®¯¨à㥬 ¨¬ï ®¡ê¥ªâ
|
||||||
add ebx,edx
|
mov byte[edi-1],0
|
||||||
pop esi ecx
|
add ebx,edx
|
||||||
|
pop esi ecx
|
||||||
;4100
|
|
||||||
mov word[ebx],CHUNK_TRIMESH
|
;4100
|
||||||
sub ecx,6
|
mov word[ebx],CHUNK_TRIMESH
|
||||||
mov dword[ebx+2],ecx
|
sub ecx,6
|
||||||
add ebx,6
|
mov dword[ebx+2],ecx
|
||||||
|
add ebx,6
|
||||||
;4110
|
|
||||||
mov word[ebx],CHUNK_VERTLIST
|
;4110
|
||||||
mov dword[ebx+2],8 ;+ ç¨á«® ¢¥àè¨ * 12
|
mov word[ebx],CHUNK_VERTLIST
|
||||||
add ebx,6
|
mov dword[ebx+2],8 ;+ ç¨á«® ¢¥àè¨ * 12
|
||||||
|
add ebx,6
|
||||||
mov edx,ebx
|
|
||||||
mov word[edx],0 ;ª®«. ¢¥àè¨
|
mov edx,ebx
|
||||||
add ebx,2
|
mov word[edx],0 ;ª®«. ¢¥àè¨
|
||||||
finit
|
add ebx,2
|
||||||
.cycle0:
|
finit
|
||||||
call txt_ignore_space
|
.cycle0:
|
||||||
cmp dword[esi],'face'
|
call txt_ignore_space
|
||||||
jne .end_v
|
cmp dword[esi],'face'
|
||||||
stdcall txt_next_line, 80
|
jne .end_v
|
||||||
|
stdcall txt_next_line, 80
|
||||||
call txt_ignore_space
|
|
||||||
cmp dword[esi],'oute'
|
call txt_ignore_space
|
||||||
jne .end_v
|
cmp dword[esi],'oute'
|
||||||
stdcall txt_next_line, 80
|
jne .end_v
|
||||||
|
stdcall txt_next_line, 80
|
||||||
mov ecx,3 ;3 â®çª¨ 1 £à ì
|
|
||||||
@@:
|
mov ecx,3 ;3 â®çª¨ 1 £à ì
|
||||||
stdcall stl_vertex_init, ebx
|
@@:
|
||||||
or eax,eax
|
stdcall stl_vertex_init, ebx
|
||||||
jz .end_v
|
or eax,eax
|
||||||
add ebx,12
|
jz .end_v
|
||||||
inc word[edx]
|
add ebx,12
|
||||||
loop @b
|
inc word[edx]
|
||||||
|
loop @b
|
||||||
mov eax,[vert_c]
|
|
||||||
cmp word[edx],ax
|
mov eax,[vert_c]
|
||||||
jge .end_v
|
cmp word[edx],ax
|
||||||
call txt_ignore_space
|
jge .end_v
|
||||||
cmp dword[esi],'endl'
|
call txt_ignore_space
|
||||||
jne .end_v
|
cmp dword[esi],'endl'
|
||||||
stdcall txt_next_line, 80
|
jne .end_v
|
||||||
|
stdcall txt_next_line, 80
|
||||||
call txt_ignore_space
|
|
||||||
cmp dword[esi],'endf'
|
call txt_ignore_space
|
||||||
jne .end_v
|
cmp dword[esi],'endf'
|
||||||
stdcall txt_next_line, 80
|
jne .end_v
|
||||||
jmp .cycle0
|
stdcall txt_next_line, 80
|
||||||
.end_v:
|
jmp .cycle0
|
||||||
|
.end_v:
|
||||||
movzx eax,word[edx]
|
|
||||||
imul eax,12
|
movzx eax,word[edx]
|
||||||
add [edx-4],eax ;¨á¯à ¢«ï¥¬ à §¬¥à ¡«®ª 4110
|
imul eax,12
|
||||||
|
add [edx-4],eax ;¨á¯à ¢«ï¥¬ à §¬¥à ¡«®ª 4110
|
||||||
;4120
|
|
||||||
mov word[ebx],CHUNK_FACELIST
|
;4120
|
||||||
mov ecx,[face_c]
|
mov word[ebx],CHUNK_FACELIST
|
||||||
mov edx,ecx
|
mov ecx,[face_c]
|
||||||
shl edx,3 ;ª®«. £à ¥© * 8
|
mov edx,ecx
|
||||||
add edx,8
|
shl edx,3 ;ª®«. £à ¥© * 8
|
||||||
mov [ebx+2],edx
|
add edx,8
|
||||||
add ebx,6
|
mov [ebx+2],edx
|
||||||
mov [ebx],cx ;ª®«. £à ¥©
|
add ebx,6
|
||||||
add ebx,2
|
mov [ebx],cx ;ª®«. £à ¥©
|
||||||
xor eax,eax
|
add ebx,2
|
||||||
@@:
|
xor eax,eax
|
||||||
mov [ebx],ax
|
@@:
|
||||||
inc eax
|
mov [ebx],ax
|
||||||
mov [ebx+2],ax
|
inc eax
|
||||||
inc eax
|
mov [ebx+2],ax
|
||||||
mov [ebx+4],ax
|
inc eax
|
||||||
inc eax
|
mov [ebx+4],ax
|
||||||
mov word[ebx+6],0 ; âਡãâë
|
inc eax
|
||||||
add ebx,8
|
mov word[ebx+6],0 ; âਡãâë
|
||||||
loop @b
|
add ebx,8
|
||||||
|
loop @b
|
||||||
mov eax,[c_mem]
|
|
||||||
mov ecx,[c_size]
|
mov eax,[c_mem]
|
||||||
.no_stl:
|
mov ecx,[c_size]
|
||||||
ret
|
.no_stl:
|
||||||
endp
|
ret
|
||||||
|
endp
|
||||||
;input:
|
|
||||||
; esi - 㪠§ ⥫ì ç «® ä ©«
|
;input:
|
||||||
; ecx - à §¬¥à ä ©«
|
; esi - 㪠§ ⥫ì ç «® ä ©«
|
||||||
align 4
|
; ecx - à §¬¥à ä ©«
|
||||||
proc convert_binary_stl
|
align 4
|
||||||
locals
|
proc convert_binary_stl
|
||||||
c_mem dd ? ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ¨ï (convert memory)
|
locals
|
||||||
c_size dd ? ;à §¬¥à ¯ ¬ï⨠¤«ï ¯à¥®¡à §®¢ ¨© (convert memory size)
|
c_mem dd ? ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ¨ï (convert memory)
|
||||||
vert_c dd ? ;ç¨á«® ¢¥àè¨ (vertex count)
|
c_size dd ? ;à §¬¥à ¯ ¬ï⨠¤«ï ¯à¥®¡à §®¢ ¨© (convert memory size)
|
||||||
face_c dd ? ;ç¨á«® £à ¥© (faces count)
|
vert_c dd ? ;ç¨á«® ¢¥àè¨ (vertex count)
|
||||||
endl
|
face_c dd ? ;ç¨á«® £à ¥© (faces count)
|
||||||
mov eax,[esi+80]
|
endl
|
||||||
or eax,eax
|
mov eax,[esi+80]
|
||||||
jnz @f
|
or eax,eax
|
||||||
notify_window_run txt_err_stl_null_v
|
jnz @f
|
||||||
jmp .no_stl
|
notify_window_run txt_err_stl_null_v
|
||||||
@@:
|
jmp .no_stl
|
||||||
cmp eax,0xffff/3
|
@@:
|
||||||
jle @f
|
cmp eax,0xffff/3
|
||||||
notify_window_run txt_err_stl_open
|
jle @f
|
||||||
mov eax,0xffff/3
|
notify_window_run txt_err_stl_open
|
||||||
@@:
|
mov eax,0xffff/3
|
||||||
|
@@:
|
||||||
mov [face_c],eax
|
|
||||||
mov ecx,eax
|
mov [face_c],eax
|
||||||
imul eax,3
|
mov ecx,eax
|
||||||
mov [vert_c],eax
|
imul eax,3
|
||||||
shl ecx,3
|
mov [vert_c],eax
|
||||||
imul eax,12
|
shl ecx,3
|
||||||
lea ecx,[ecx+eax+40+4] ;+4 à §¬¥à ¤«ï ¨¬¥¨ ®¡ê¥ªâ
|
imul eax,12
|
||||||
mov [c_size],ecx
|
lea ecx,[ecx+eax+40+4] ;+4 à §¬¥à ¤«ï ¨¬¥¨ ®¡ê¥ªâ
|
||||||
stdcall mem.Alloc,ecx
|
mov [c_size],ecx
|
||||||
mov [c_mem],eax
|
stdcall mem.Alloc,ecx
|
||||||
mov ebx,eax
|
mov [c_mem],eax
|
||||||
|
mov ebx,eax
|
||||||
mov word[ebx],CHUNK_MAIN
|
|
||||||
mov dword[ebx+2],ecx
|
mov word[ebx],CHUNK_MAIN
|
||||||
add ebx,6
|
mov dword[ebx+2],ecx
|
||||||
|
add ebx,6
|
||||||
;3d3d
|
|
||||||
mov word[ebx],CHUNK_OBJMESH
|
;3d3d
|
||||||
sub ecx,6
|
mov word[ebx],CHUNK_OBJMESH
|
||||||
mov dword[ebx+2],ecx
|
sub ecx,6
|
||||||
add ebx,6
|
mov dword[ebx+2],ecx
|
||||||
|
add ebx,6
|
||||||
;4000
|
|
||||||
mov word[ebx],CHUNK_OBJBLOCK
|
;4000
|
||||||
sub ecx,6
|
mov word[ebx],CHUNK_OBJBLOCK
|
||||||
mov dword[ebx+2],ecx
|
sub ecx,6
|
||||||
add ebx,6
|
mov dword[ebx+2],ecx
|
||||||
mov dword[ebx],'Stl' ;¨¬ï ®¡ê¥ªâ
|
add ebx,6
|
||||||
add ebx,4
|
mov dword[ebx],'Stl' ;¨¬ï ®¡ê¥ªâ
|
||||||
|
add ebx,4
|
||||||
;4100
|
|
||||||
mov word[ebx],CHUNK_TRIMESH
|
;4100
|
||||||
sub ecx,6
|
mov word[ebx],CHUNK_TRIMESH
|
||||||
mov dword[ebx+2],ecx
|
sub ecx,6
|
||||||
add ebx,6
|
mov dword[ebx+2],ecx
|
||||||
|
add ebx,6
|
||||||
;4110
|
|
||||||
mov word[ebx],CHUNK_VERTLIST
|
;4110
|
||||||
mov dword[ebx+2],8 ;+ ç¨á«® ¢¥àè¨ * 12
|
mov word[ebx],CHUNK_VERTLIST
|
||||||
add ebx,6
|
mov dword[ebx+2],8 ;+ ç¨á«® ¢¥àè¨ * 12
|
||||||
|
add ebx,6
|
||||||
mov edx,ebx
|
|
||||||
mov ecx,[vert_c]
|
mov edx,ebx
|
||||||
mov word[edx],cx ;ª®«. ¢¥àè¨
|
mov ecx,[vert_c]
|
||||||
add ebx,2
|
mov word[edx],cx ;ª®«. ¢¥àè¨
|
||||||
|
add ebx,2
|
||||||
add esi,80+4+12 ;¯à®¯ã᪠§ £®«®¢ª , ç¨á« £à ¥©, 1-£® ¢¥ªâ®à ®à¬ «¥©
|
|
||||||
mov edi,ebx
|
add esi,80+4+12 ;¯à®¯ã᪠§ £®«®¢ª , ç¨á« £à ¥©, 1-£® ¢¥ªâ®à ®à¬ «¥©
|
||||||
mov eax,[face_c]
|
mov edi,ebx
|
||||||
@@: ;横« ¯® £à ï¬
|
mov eax,[face_c]
|
||||||
mov ecx,9
|
@@: ;横« ¯® £à ï¬
|
||||||
rep movsd ;ª®¯¨à㥬 ª®®à¤¨ âë 3-å ¢¥àè¨
|
mov ecx,9
|
||||||
add esi,14 ;¯à®¯ã᪠¢¥ªâ®à ®à¬ «¥© ¨ âਡã⮢
|
rep movsd ;ª®¯¨à㥬 ª®®à¤¨ âë 3-å ¢¥àè¨
|
||||||
dec eax
|
add esi,14 ;¯à®¯ã᪠¢¥ªâ®à ®à¬ «¥© ¨ âਡã⮢
|
||||||
jnz @b
|
dec eax
|
||||||
mov ebx,edi
|
jnz @b
|
||||||
|
mov ebx,edi
|
||||||
movzx eax,word[edx]
|
|
||||||
imul eax,12
|
movzx eax,word[edx]
|
||||||
add [edx-4],eax ;¨á¯à ¢«ï¥¬ à §¬¥à ¡«®ª 4110
|
imul eax,12
|
||||||
|
add [edx-4],eax ;¨á¯à ¢«ï¥¬ à §¬¥à ¡«®ª 4110
|
||||||
;4120
|
|
||||||
mov word[ebx],CHUNK_FACELIST
|
;4120
|
||||||
mov ecx,[face_c]
|
mov word[ebx],CHUNK_FACELIST
|
||||||
mov edx,ecx
|
mov ecx,[face_c]
|
||||||
shl edx,3 ;ª®«. £à ¥© * 8
|
mov edx,ecx
|
||||||
add edx,8
|
shl edx,3 ;ª®«. £à ¥© * 8
|
||||||
mov [ebx+2],edx
|
add edx,8
|
||||||
add ebx,6
|
mov [ebx+2],edx
|
||||||
mov [ebx],cx ;ª®«. £à ¥©
|
add ebx,6
|
||||||
add ebx,2
|
mov [ebx],cx ;ª®«. £à ¥©
|
||||||
xor eax,eax
|
add ebx,2
|
||||||
@@:
|
xor eax,eax
|
||||||
mov [ebx],ax
|
@@:
|
||||||
inc eax
|
mov [ebx],ax
|
||||||
mov [ebx+2],ax
|
inc eax
|
||||||
inc eax
|
mov [ebx+2],ax
|
||||||
mov [ebx+4],ax
|
inc eax
|
||||||
inc eax
|
mov [ebx+4],ax
|
||||||
mov word[ebx+6],0 ; âਡãâë
|
inc eax
|
||||||
add ebx,8
|
mov word[ebx+6],0 ; âਡãâë
|
||||||
loop @b
|
add ebx,8
|
||||||
|
loop @b
|
||||||
mov eax,[c_mem]
|
|
||||||
mov ecx,[c_size]
|
mov eax,[c_mem]
|
||||||
.no_stl:
|
mov ecx,[c_size]
|
||||||
ret
|
.no_stl:
|
||||||
endp
|
ret
|
||||||
|
endp
|
||||||
;output:
|
|
||||||
; eax - vertex count
|
;output:
|
||||||
align 4
|
; eax - vertex count
|
||||||
proc get_stl_vertex_count uses ebx ecx edi, f_data:dword, f_size:dword
|
align 4
|
||||||
mov al,'v'
|
proc get_stl_vertex_count uses ebx ecx edi, f_data:dword, f_size:dword
|
||||||
xor ebx,ebx
|
mov al,'v'
|
||||||
mov ecx,[f_size]
|
xor ebx,ebx
|
||||||
mov edi,[f_data]
|
mov ecx,[f_size]
|
||||||
.cycle0:
|
mov edi,[f_data]
|
||||||
repne scasb
|
.cycle0:
|
||||||
cmp dword[edi],'erte'
|
repne scasb
|
||||||
jne @f
|
cmp dword[edi],'erte'
|
||||||
inc ebx
|
jne @f
|
||||||
add edi,4
|
inc ebx
|
||||||
sub ecx,4
|
add edi,4
|
||||||
cmp ecx,4
|
sub ecx,4
|
||||||
jg .cycle0
|
cmp ecx,4
|
||||||
@@:
|
jg .cycle0
|
||||||
mov eax,ebx
|
@@:
|
||||||
ret
|
mov eax,ebx
|
||||||
endp
|
ret
|
||||||
|
endp
|
||||||
;input:
|
|
||||||
; esi - input description text
|
;input:
|
||||||
; ppoi - pointer to vertex struct
|
; esi - input description text
|
||||||
;output:
|
; ppoi - pointer to vertex struct
|
||||||
; eax - 0 (if error init) or 1
|
;output:
|
||||||
; esi - output description text
|
; eax - 0 (if error init) or 1
|
||||||
align 4
|
; esi - output description text
|
||||||
proc stl_vertex_init uses ebx ecx edi, ppoi:dword
|
align 4
|
||||||
call txt_ignore_space
|
proc stl_vertex_init uses ebx ecx edi, ppoi:dword
|
||||||
cmp dword[esi],'vert'
|
call txt_ignore_space
|
||||||
jne .err_init
|
cmp dword[esi],'vert'
|
||||||
cmp word[esi+4],'ex'
|
jne .err_init
|
||||||
jne .err_init
|
cmp word[esi+4],'ex'
|
||||||
add esi,6
|
jne .err_init
|
||||||
mov ebx,[ppoi]
|
add esi,6
|
||||||
|
mov ebx,[ppoi]
|
||||||
call txt_copy_data
|
|
||||||
call String_to_DoubleFloat
|
call txt_copy_data
|
||||||
fld qword[Data_Double]
|
call String_to_DoubleFloat
|
||||||
fstp dword[ebx] ;coord X
|
fld qword[Data_Double]
|
||||||
|
fstp dword[ebx] ;coord X
|
||||||
call txt_copy_data
|
|
||||||
call String_to_DoubleFloat
|
call txt_copy_data
|
||||||
fld qword[Data_Double]
|
call String_to_DoubleFloat
|
||||||
fstp dword[ebx+4] ;coord X
|
fld qword[Data_Double]
|
||||||
|
fstp dword[ebx+4] ;coord X
|
||||||
call txt_copy_data
|
|
||||||
call String_to_DoubleFloat
|
call txt_copy_data
|
||||||
fld qword[Data_Double]
|
call String_to_DoubleFloat
|
||||||
fstp dword[ebx+8] ;coord Z
|
fld qword[Data_Double]
|
||||||
|
fstp dword[ebx+8] ;coord Z
|
||||||
stdcall txt_next_line, 80
|
|
||||||
jmp @f
|
stdcall txt_next_line, 80
|
||||||
.err_init:
|
jmp @f
|
||||||
xor eax,eax
|
.err_init:
|
||||||
jmp .end_f
|
xor eax,eax
|
||||||
@@:
|
jmp .end_f
|
||||||
xor eax,eax
|
@@:
|
||||||
inc eax
|
xor eax,eax
|
||||||
.end_f:
|
inc eax
|
||||||
ret
|
.end_f:
|
||||||
endp
|
ret
|
||||||
|
endp
|
||||||
;input:
|
|
||||||
; esi - 㪠§ ⥫ì ç «® áâப¨ á ¯à®¡¥« ¬¨
|
;input:
|
||||||
;output:
|
; esi - 㪠§ ⥫ì ç «® áâப¨ á ¯à®¡¥« ¬¨
|
||||||
; al - destroy
|
;output:
|
||||||
; ecx - destroy
|
; al - destroy
|
||||||
; esi - 㪠§ â¥«ì ¯¥à¢ë© ¥¯à®¡¥«ìë© á¨¬¢®«
|
; ecx - destroy
|
||||||
align 4
|
; esi - 㪠§ â¥«ì ¯¥à¢ë© ¥¯à®¡¥«ìë© á¨¬¢®«
|
||||||
txt_ignore_space:
|
align 4
|
||||||
mov ecx,64 ;§ é¨â ®â § 横«¨¢ ¨ï
|
txt_ignore_space:
|
||||||
@@:
|
mov ecx,64 ;§ é¨â ®â § 横«¨¢ ¨ï
|
||||||
lodsb
|
@@:
|
||||||
cmp al,' '
|
lodsb
|
||||||
jne @f
|
cmp al,' '
|
||||||
loop @b
|
jne @f
|
||||||
@@:
|
loop @b
|
||||||
dec esi
|
@@:
|
||||||
ret
|
dec esi
|
||||||
|
ret
|
||||||
;input:
|
|
||||||
; esi - 㪠§ ⥫ì áâபã á ç¨á«®¬ (¯à®¡¥«ë ¢ ç «¥ áâப¨ ¨£®à¨àãîâìáï)
|
;input:
|
||||||
;output:
|
; esi - 㪠§ ⥫ì áâபã á ç¨á«®¬ (¯à®¡¥«ë ¢ ç «¥ áâப¨ ¨£®à¨àãîâìáï)
|
||||||
; al - destroy
|
;output:
|
||||||
; ecx - destroy
|
; al - destroy
|
||||||
; edi - destroy
|
; ecx - destroy
|
||||||
; esi - 㪠§ â¥«ì ª®¥æ ª®¯¨à®¢ ®£® ç¨á«
|
; edi - destroy
|
||||||
; Data_String - áâப á ç¨á«®¬ ¨§ esi
|
; esi - 㪠§ â¥«ì ª®¥æ ª®¯¨à®¢ ®£® ç¨á«
|
||||||
align 4
|
; Data_String - áâப á ç¨á«®¬ ¨§ esi
|
||||||
txt_copy_data:
|
align 4
|
||||||
call txt_ignore_space
|
txt_copy_data:
|
||||||
mov ecx,32
|
call txt_ignore_space
|
||||||
mov edi,esi
|
mov ecx,32
|
||||||
@@:
|
mov edi,esi
|
||||||
lodsb
|
@@:
|
||||||
or al,al
|
lodsb
|
||||||
jz @f
|
or al,al
|
||||||
cmp al,' '
|
jz @f
|
||||||
je @f
|
cmp al,' '
|
||||||
cmp al,13
|
je @f
|
||||||
je @f
|
cmp al,13
|
||||||
loop @b
|
je @f
|
||||||
@@:
|
loop @b
|
||||||
mov esi,edi
|
@@:
|
||||||
sub ecx,32
|
mov esi,edi
|
||||||
neg ecx
|
sub ecx,32
|
||||||
mov edi,Data_String
|
neg ecx
|
||||||
rep movsb
|
mov edi,Data_String
|
||||||
mov byte[edi],0
|
rep movsb
|
||||||
ret
|
mov byte[edi],0
|
||||||
|
ret
|
||||||
;input:
|
|
||||||
; esi - text pointer
|
;input:
|
||||||
align 4
|
; esi - text pointer
|
||||||
proc txt_next_line uses eax ecx edi, mlen:dword
|
align 4
|
||||||
mov al,13
|
proc txt_next_line uses eax ecx edi, mlen:dword
|
||||||
mov ecx,[mlen]
|
mov al,13
|
||||||
mov edi,esi
|
mov ecx,[mlen]
|
||||||
repne scasb
|
mov edi,esi
|
||||||
cmp byte[edi],10
|
repne scasb
|
||||||
jne @f
|
cmp byte[edi],10
|
||||||
inc edi
|
jne @f
|
||||||
@@:
|
inc edi
|
||||||
mov esi,edi
|
@@:
|
||||||
ret
|
mov esi,edi
|
||||||
endp
|
ret
|
||||||
|
endp
|
||||||
|
@ -1,320 +1,324 @@
|
|||||||
;
|
;
|
||||||
; §¤¥áì ᮡà ë ¤ ë¥ ¯® ¡«®ª ¬ *.3ds
|
; §¤¥áì ᮡà ë ¤ ë¥ ¯® ¡«®ª ¬ *.3ds
|
||||||
;
|
;
|
||||||
|
|
||||||
MAX_FILE_LEVEL equ 20 ;¬ ªá¨¬ «ìë© ã஢¥ì ¢«®¦¥®á⨠¡«®ª®¢ ¤«ï «¨§
|
; Language support for locales: ru_RU (CP866), en_US.
|
||||||
|
|
||||||
sizeof.block_3ds equ 9
|
MAX_FILE_LEVEL equ 20 ;¬ ªá¨¬ «ìë© ã஢¥ì ¢«®¦¥®á⨠¡«®ª®¢ ¤«ï «¨§
|
||||||
can_save db 0 ;¨§¬¥ï«áï «¨ ä ©«
|
|
||||||
|
sizeof.block_3ds equ 9
|
||||||
macro block_3ds id,icon,par,caption
|
can_save db 0 ;¨§¬¥ï«áï «¨ ä ©«
|
||||||
{
|
|
||||||
dw id ;+0 ¨¤¥â¨ä¨ª â®à ¡«®ª ¢ ä ©«¥ 3ds
|
macro block_3ds id,icon,par,caption
|
||||||
dw icon ;+2 ®¬¥à ¨ª®ª¨ ¤«ï ¡«®ª
|
{
|
||||||
db par ;+4 ᮤ¥à¦¨â «¨ ¡«®ª ¯®¤¡«®ª¨ (0-¤ 1-¥â)
|
dw id ;+0 ¨¤¥â¨ä¨ª â®à ¡«®ª ¢ ä ©«¥ 3ds
|
||||||
dd caption+0 ;+5 ®¯¨á ¨¥ ¡«®ª
|
dw icon ;+2 ®¬¥à ¨ª®ª¨ ¤«ï ¡«®ª
|
||||||
}
|
db par ;+4 ᮤ¥à¦¨â «¨ ¡«®ª ¯®¤¡«®ª¨ (0-¤ 1-¥â)
|
||||||
|
dd caption+0 ;+5 ®¯¨á ¨¥ ¡«®ª
|
||||||
CHUNK_MAIN equ 0x4D4D ; [-] áæ¥
|
}
|
||||||
CHUNK_ambient_color equ 0x2100 ; [-] ambient color
|
|
||||||
CHUNK_OBJMESH equ 0x3D3D ; [-] ¡®à ®¡ê¥ªâ®¢
|
CHUNK_MAIN equ 0x4D4D ; [-] áæ¥
|
||||||
CHUNK_OBJBLOCK equ 0x4000 ; [+] ®¡ê¥ªâ
|
CHUNK_ambient_color equ 0x2100 ; [-] ambient color
|
||||||
CHUNK_TRIMESH equ 0x4100 ; [-] trimesh-®¡ê¥ªâ
|
CHUNK_OBJMESH equ 0x3D3D ; [-] ¡®à ®¡ê¥ªâ®¢
|
||||||
CHUNK_VERTLIST equ 0x4110 ; [+] ᯨ᮪ ¢¥àè¨
|
CHUNK_OBJBLOCK equ 0x4000 ; [+] ®¡ê¥ªâ
|
||||||
CHUNK_FACELIST equ 0x4120 ; [+] ᯨ᮪ £à ¥©
|
CHUNK_TRIMESH equ 0x4100 ; [-] trimesh-®¡ê¥ªâ
|
||||||
CHUNK_FACEMAT equ 0x4130 ; [+] ¬ â¥à¨ «ë £à ¥©
|
CHUNK_VERTLIST equ 0x4110 ; [+] ᯨ᮪ ¢¥àè¨
|
||||||
CHUNK_MAPLIST equ 0x4140 ; [+] ⥪áâãàë¥ ª®®à¤¨ âë
|
CHUNK_FACELIST equ 0x4120 ; [+] ᯨ᮪ £à ¥©
|
||||||
CHUNK_TRMATRIX equ 0x4160 ; [+] ¬ âà¨æ ¯¥à¥¢®¤
|
CHUNK_FACEMAT equ 0x4130 ; [+] ¬ â¥à¨ «ë £à ¥©
|
||||||
CHUNK_CAMERA equ 0x4700 ; [+] ®¡ê¥ªâ-ª ¬¥à
|
CHUNK_MAPLIST equ 0x4140 ; [+] ⥪áâãàë¥ ª®®à¤¨ âë
|
||||||
CHUNK_MATERIAL equ 0xAFFF ; [-] ¬ â¥à¨ «
|
CHUNK_TRMATRIX equ 0x4160 ; [+] ¬ âà¨æ ¯¥à¥¢®¤
|
||||||
CHUNK_MATNAME equ 0xA000 ; [+] §¢ ¨¥ ¬ â¥à¨ «
|
CHUNK_CAMERA equ 0x4700 ; [+] ®¡ê¥ªâ-ª ¬¥à
|
||||||
CHUNK_TEXTURE equ 0xA200 ; [-] ⥪áâãà ¬ â¥à¨ «
|
CHUNK_MATERIAL equ 0xAFFF ; [-] ¬ â¥à¨ «
|
||||||
CHUNK_MAPFILE equ 0xA300 ; [+] ¨¬ï ä ©« ⥪áâãàë
|
CHUNK_MATNAME equ 0xA000 ; [+] §¢ ¨¥ ¬ â¥à¨ «
|
||||||
CHUNK_KEYFRAMER equ 0xB000 ; [-] ¨ä®à¬ æ¨ï ®¡ ¨¬ 樨
|
CHUNK_TEXTURE equ 0xA200 ; [-] ⥪áâãà ¬ â¥à¨ «
|
||||||
CHUNK_TRACKINFO equ 0xB002 ; [-] ¯®¢¥¤¥¨¥ ®¡ê¥ªâ
|
CHUNK_MAPFILE equ 0xA300 ; [+] ¨¬ï ä ©« ⥪áâãàë
|
||||||
CHUNK_TRACKOBJNAME equ 0xB010 ; [+] §¢ ¨¥ í⮣® ®¡ê¥ªâ
|
CHUNK_KEYFRAMER equ 0xB000 ; [-] ¨ä®à¬ æ¨ï ®¡ ¨¬ 樨
|
||||||
CHUNK_TRACKPIVOT equ 0xB013 ; [+] æ¥âà ¢à é¥¨ï ®¡ê¥ªâ
|
CHUNK_TRACKINFO equ 0xB002 ; [-] ¯®¢¥¤¥¨¥ ®¡ê¥ªâ
|
||||||
CHUNK_TRACKPOS equ 0xB020 ; [+] âà ¥ªâ®à¨ï ®¡ê¥ªâ
|
CHUNK_TRACKOBJNAME equ 0xB010 ; [+] §¢ ¨¥ í⮣® ®¡ê¥ªâ
|
||||||
CHUNK_TRACKROTATE equ 0xB021 ; [+] âà ¥ªâ®à¨ï ¢à é¥¨ï ®¡ê¥ªâ
|
CHUNK_TRACKPIVOT equ 0xB013 ; [+] æ¥âà ¢à é¥¨ï ®¡ê¥ªâ
|
||||||
CHUNK_TRACKCAMERA equ 0xB003 ; [-] ¯®¢¥¤¥¨¥ ª ¬¥àë
|
CHUNK_TRACKPOS equ 0xB020 ; [+] âà ¥ªâ®à¨ï ®¡ê¥ªâ
|
||||||
CHUNK_TRACKFOV equ 0xB023 ; [+] ¯®¢¥¤¥¨¥ fov ª ¬¥àë
|
CHUNK_TRACKROTATE equ 0xB021 ; [+] âà ¥ªâ®à¨ï ¢à é¥¨ï ®¡ê¥ªâ
|
||||||
CHUNK_TRACKROLL equ 0xB024 ; [+] ¯®¢¥¤¥¨¥ roll ª ¬¥àë
|
CHUNK_TRACKCAMERA equ 0xB003 ; [-] ¯®¢¥¤¥¨¥ ª ¬¥àë
|
||||||
CHUNK_TRACKCAMTGT equ 0xB004 ; [-] ¯®¢¥¤¥¨¥ "楫¨" ª ¬¥àë
|
CHUNK_TRACKFOV equ 0xB023 ; [+] ¯®¢¥¤¥¨¥ fov ª ¬¥àë
|
||||||
|
CHUNK_TRACKROLL equ 0xB024 ; [+] ¯®¢¥¤¥¨¥ roll ª ¬¥àë
|
||||||
;¤ ë¥ á®¤¥à¦ â «¨èì ¡«®ª¨, ®â¬¥ç¥ë¥ ¯«îᮬ, ®áâ «ìë¥ ¡«®ª¨
|
CHUNK_TRACKCAMTGT equ 0xB004 ; [-] ¯®¢¥¤¥¨¥ "楫¨" ª ¬¥àë
|
||||||
; á®áâ®ïâ «¨èì ¨§ ¯®¤¡«®ª®¢
|
|
||||||
|
;¤ ë¥ á®¤¥à¦ â «¨èì ¡«®ª¨, ®â¬¥ç¥ë¥ ¯«îᮬ, ®áâ «ìë¥ ¡«®ª¨
|
||||||
align 4
|
; á®áâ®ïâ «¨èì ¨§ ¯®¤¡«®ª®¢
|
||||||
type_bloks:
|
|
||||||
block_3ds 0x0002,5,1,txt_0002
|
align 4
|
||||||
block_3ds 0x3d3e,5,1 ; [+] mesh version
|
type_bloks:
|
||||||
block_3ds 0x0011,4,1,txt_0011
|
block_3ds 0x0002,5,1,txt_0002
|
||||||
block_3ds 0x0100,3,1,txt_0100
|
block_3ds 0x3d3e,5,1 ; [+] mesh version
|
||||||
block_3ds CHUNK_ambient_color,3,0,txt_2100 ; [-] ambient color
|
block_3ds 0x0011,4,1,txt_0011
|
||||||
block_3ds CHUNK_OBJMESH, 3,0,txt_3d3d
|
block_3ds 0x0100,3,1,txt_0100
|
||||||
block_3ds CHUNK_OBJBLOCK,11,1,txt_4000
|
block_3ds CHUNK_ambient_color,3,0,txt_2100 ; [-] ambient color
|
||||||
block_3ds CHUNK_TRIMESH, 3,0,txt_4100
|
block_3ds CHUNK_OBJMESH, 3,0,txt_3d3d
|
||||||
block_3ds CHUNK_VERTLIST,8,1,txt_4110
|
block_3ds CHUNK_OBJBLOCK,11,1,txt_4000
|
||||||
block_3ds CHUNK_FACELIST,3,1,txt_4120
|
block_3ds CHUNK_TRIMESH, 3,0,txt_4100
|
||||||
block_3ds CHUNK_FACEMAT,10,1,txt_4130
|
block_3ds CHUNK_VERTLIST,8,1,txt_4110
|
||||||
block_3ds CHUNK_MAPLIST, 3,1,txt_4140
|
block_3ds CHUNK_FACELIST,3,1,txt_4120
|
||||||
block_3ds CHUNK_TRMATRIX,3,1,txt_4160
|
block_3ds CHUNK_FACEMAT,10,1,txt_4130
|
||||||
block_3ds 0x4600,3,1,txt_4600
|
block_3ds CHUNK_MAPLIST, 3,1,txt_4140
|
||||||
block_3ds CHUNK_CAMERA, 3,1,txt_4700
|
block_3ds CHUNK_TRMATRIX,3,1,txt_4160
|
||||||
block_3ds CHUNK_MATERIAL,10,0,txt_afff
|
block_3ds 0x4600,3,1,txt_4600
|
||||||
block_3ds CHUNK_MATNAME, 3,1,txt_a000
|
block_3ds CHUNK_CAMERA, 3,1,txt_4700
|
||||||
block_3ds 0xa010,4,0,txt_a010
|
block_3ds CHUNK_MATERIAL,10,0,txt_afff
|
||||||
block_3ds 0xa020,4,0,txt_a020
|
block_3ds CHUNK_MATNAME, 3,1,txt_a000
|
||||||
block_3ds 0xa030,4,0,txt_a030
|
block_3ds 0xa010,4,0,txt_a010
|
||||||
block_3ds 0xa100,5,1,txt_a100
|
block_3ds 0xa020,4,0,txt_a020
|
||||||
block_3ds CHUNK_TEXTURE, 3,0,txt_a200
|
block_3ds 0xa030,4,0,txt_a030
|
||||||
block_3ds CHUNK_MAPFILE, 6,1,txt_a300
|
block_3ds 0xa100,5,1,txt_a100
|
||||||
block_3ds CHUNK_KEYFRAMER, 7,0,txt_b000
|
block_3ds CHUNK_TEXTURE, 3,0,txt_a200
|
||||||
block_3ds CHUNK_TRACKINFO, 3,0,txt_b002
|
block_3ds CHUNK_MAPFILE, 6,1,txt_a300
|
||||||
block_3ds CHUNK_TRACKOBJNAME,3,1,txt_b010
|
block_3ds CHUNK_KEYFRAMER, 7,0,txt_b000
|
||||||
block_3ds 0xb011,3,1,txt_b011
|
block_3ds CHUNK_TRACKINFO, 3,0,txt_b002
|
||||||
block_3ds CHUNK_TRACKPIVOT, 3,1,txt_b013
|
block_3ds CHUNK_TRACKOBJNAME,3,1,txt_b010
|
||||||
block_3ds 0xb014,3,1,txt_b014
|
block_3ds 0xb011,3,1,txt_b011
|
||||||
block_3ds CHUNK_TRACKPOS, 3,1,txt_b020
|
block_3ds CHUNK_TRACKPIVOT, 3,1,txt_b013
|
||||||
block_3ds CHUNK_TRACKROTATE, 3,1,txt_b021
|
block_3ds 0xb014,3,1,txt_b014
|
||||||
block_3ds CHUNK_TRACKCAMERA, 7,0,txt_b003
|
block_3ds CHUNK_TRACKPOS, 3,1,txt_b020
|
||||||
block_3ds CHUNK_TRACKFOV, 7,1,txt_b023
|
block_3ds CHUNK_TRACKROTATE, 3,1,txt_b021
|
||||||
block_3ds CHUNK_TRACKROLL, 7,1,txt_b024
|
block_3ds CHUNK_TRACKCAMERA, 7,0,txt_b003
|
||||||
block_3ds CHUNK_TRACKCAMTGT, 7,0,txt_b004
|
block_3ds CHUNK_TRACKFOV, 7,1,txt_b023
|
||||||
|
block_3ds CHUNK_TRACKROLL, 7,1,txt_b024
|
||||||
;--- ¤ «¥¥ ¥ ¢® ¢á¥å ¡«®ª å ᬮ£ ©â¨ ®¯¨á ¨¥ àãá᪮¬ ï§ëª¥
|
block_3ds CHUNK_TRACKCAMTGT, 7,0,txt_b004
|
||||||
block_3ds 0x4111, 3,1,txt_4111
|
|
||||||
block_3ds 0x4150, 3,1,txt_4150
|
;--- ¤ «¥¥ ¥ ¢® ¢á¥å ¡«®ª å ᬮ£ ©â¨ ®¯¨á ¨¥ àãá᪮¬ ï§ëª¥
|
||||||
block_3ds 0x4165, 3,1,txt_4165
|
block_3ds 0x4111, 3,1,txt_4111
|
||||||
block_3ds 0x4610, 3,1,txt_4610
|
block_3ds 0x4150, 3,1,txt_4150
|
||||||
block_3ds 0x4627, 3,1,txt_4627
|
block_3ds 0x4165, 3,1,txt_4165
|
||||||
block_3ds 0x4630, 3,1,txt_4630
|
block_3ds 0x4610, 3,1,txt_4610
|
||||||
block_3ds 0x4641, 3,1,txt_4641
|
block_3ds 0x4627, 3,1,txt_4627
|
||||||
block_3ds 0x4650, 3,1,txt_4650
|
block_3ds 0x4630, 3,1,txt_4630
|
||||||
block_3ds 0x4651, 3,1,txt_4651
|
block_3ds 0x4641, 3,1,txt_4641
|
||||||
block_3ds 0x4652, 3,1,txt_4652
|
block_3ds 0x4650, 3,1,txt_4650
|
||||||
block_3ds 0x4653, 3,1,txt_4653
|
block_3ds 0x4651, 3,1,txt_4651
|
||||||
block_3ds 0x4656, 3,1,txt_4656
|
block_3ds 0x4652, 3,1,txt_4652
|
||||||
block_3ds 0x4658, 3,1,txt_4658
|
block_3ds 0x4653, 3,1,txt_4653
|
||||||
block_3ds 0x4620, 3,1,txt_4620
|
block_3ds 0x4656, 3,1,txt_4656
|
||||||
block_3ds 0x4625, 3,1,txt_4625
|
block_3ds 0x4658, 3,1,txt_4658
|
||||||
block_3ds 0x4659, 3,1,txt_4659
|
block_3ds 0x4620, 3,1,txt_4620
|
||||||
block_3ds 0x465a, 3,1,txt_465a
|
block_3ds 0x4625, 3,1,txt_4625
|
||||||
block_3ds 0x465b, 3,1,txt_465b
|
block_3ds 0x4659, 3,1,txt_4659
|
||||||
block_3ds 0xa230, 3,1,txt_a230
|
block_3ds 0x465a, 3,1,txt_465a
|
||||||
block_3ds 0xa220, 3,1,txt_a220
|
block_3ds 0x465b, 3,1,txt_465b
|
||||||
block_3ds 0xa351, 3,1,txt_a351
|
block_3ds 0xa230, 3,1,txt_a230
|
||||||
block_3ds 0xb007, 3,1,txt_b007
|
block_3ds 0xa220, 3,1,txt_a220
|
||||||
block_3ds 0xb008, 3,1,txt_b008
|
block_3ds 0xa351, 3,1,txt_a351
|
||||||
block_3ds 0xb022, 3,1,txt_b022
|
block_3ds 0xb007, 3,1,txt_b007
|
||||||
block_3ds 0xb030, 3,1,txt_b030
|
block_3ds 0xb008, 3,1,txt_b008
|
||||||
block_3ds 0xa040, 3,1,txt_a040
|
block_3ds 0xb022, 3,1,txt_b022
|
||||||
block_3ds 0xa041, 3,1,txt_a041
|
block_3ds 0xb030, 3,1,txt_b030
|
||||||
block_3ds 0xa050, 3,1,txt_a050
|
block_3ds 0xa040, 3,1,txt_a040
|
||||||
block_3ds 0xa052, 3,1,txt_a052
|
block_3ds 0xa041, 3,1,txt_a041
|
||||||
block_3ds 0xa053, 3,1,txt_a053
|
block_3ds 0xa050, 3,1,txt_a050
|
||||||
block_3ds 0xa081, 3,1,txt_a081
|
block_3ds 0xa052, 3,1,txt_a052
|
||||||
block_3ds 0xa083, 3,1,txt_a083
|
block_3ds 0xa053, 3,1,txt_a053
|
||||||
block_3ds 0xa084, 3,1,txt_a084
|
block_3ds 0xa081, 3,1,txt_a081
|
||||||
block_3ds 0xa085, 3,1,txt_a085
|
block_3ds 0xa083, 3,1,txt_a083
|
||||||
block_3ds 0xa087, 3,1,txt_a087
|
block_3ds 0xa084, 3,1,txt_a084
|
||||||
block_3ds 0xa088, 3,1,txt_a088
|
block_3ds 0xa085, 3,1,txt_a085
|
||||||
block_3ds 0xa08a, 3,1,txt_a08a
|
block_3ds 0xa087, 3,1,txt_a087
|
||||||
block_3ds 0xa08c, 3,1,txt_a08c
|
block_3ds 0xa088, 3,1,txt_a088
|
||||||
block_3ds 0xa08e, 3,1,txt_a08e
|
block_3ds 0xa08a, 3,1,txt_a08a
|
||||||
.end:
|
block_3ds 0xa08c, 3,1,txt_a08c
|
||||||
|
block_3ds 0xa08e, 3,1,txt_a08e
|
||||||
if lang eq ru_RU
|
.end:
|
||||||
txt_0002 db '3ds ¢¥àá¨ï',0
|
|
||||||
txt_0011 db '–¢¥â rgb (¡ ©â®¢ë© ä®à¬ â)',0
|
if lang eq ru_RU
|
||||||
;txt_0012 db 'LIN_COLOR_24',0
|
txt_0002 db '3ds ¢¥àá¨ï',0
|
||||||
;txt_0030 db 'Percentage value (int)',0
|
txt_0011 db '–¢¥â rgb (¡ ©â®¢ë© ä®à¬ â)',0
|
||||||
;txt_0031 db 'Percentage value (float)',0
|
;txt_0012 db 'LIN_COLOR_24',0
|
||||||
txt_0100 db 'Master scale',0
|
;txt_0030 db 'Percentage value (int)',0
|
||||||
txt_2100 db '–¢¥â ®ªà㦠î饩 á।ë',0
|
;txt_0031 db 'Percentage value (float)',0
|
||||||
txt_3d3d db '<27> ¡®à ®¡ê¥ªâ®¢',0
|
txt_0100 db 'Master scale',0
|
||||||
txt_4000 db 'Ž¡ê¥ªâ (á ¨¬¥¥¬)',0
|
txt_2100 db '–¢¥â ®ªà㦠î饩 á।ë',0
|
||||||
txt_4100 db '’à¥ã£®«ìë¥ á¥âª¨',0
|
txt_3d3d db '<27> ¡®à ®¡ê¥ªâ®¢',0
|
||||||
txt_4110 db '‘¯¨á®ª ¢¥àè¨',0
|
txt_4000 db 'Ž¡ê¥ªâ (á ¨¬¥¥¬)',0
|
||||||
txt_4120 db '‘¯¨á®ª £à ¥©',0
|
txt_4100 db '’à¥ã£®«ìë¥ á¥âª¨',0
|
||||||
txt_4130 db 'Œ â¥à¨ «ë £à ¥©',0
|
txt_4110 db '‘¯¨á®ª ¢¥àè¨',0
|
||||||
txt_4140 db '’¥ªáâãàë¥ ª®®à¤¨ âë',0
|
txt_4120 db '‘¯¨á®ª £à ¥©',0
|
||||||
txt_4160 db 'Œ âà¨æ ¯¥à¥¢®¤ ',0
|
txt_4130 db 'Œ â¥à¨ «ë £à ¥©',0
|
||||||
txt_4600 db '‘¢¥â',0
|
txt_4140 db '’¥ªáâãàë¥ ª®®à¤¨ âë',0
|
||||||
txt_4700 db 'Š ¬¥à ',0
|
txt_4160 db 'Œ âà¨æ ¯¥à¥¢®¤ ',0
|
||||||
txt_a000 db '<27> §¢ ¨¥ ¬ â¥à¨ « ',0
|
txt_4600 db '‘¢¥â',0
|
||||||
txt_a010 db 'Žªà㦠î騩 梥â',0
|
txt_4700 db 'Š ¬¥à ',0
|
||||||
txt_a020 db '„¨ääã§ë© 梥â',0
|
txt_a000 db '<27> §¢ ¨¥ ¬ â¥à¨ « ',0
|
||||||
txt_a030 db '‡¥àª «ìë© æ¢¥â',0
|
txt_a010 db 'Žªà㦠î騩 梥â',0
|
||||||
txt_a100 db '’¨¯ ¬ â¥à¨ « [1=flat 2=gouraud 3=phong 4=metal]',0
|
txt_a020 db '„¨ääã§ë© 梥â',0
|
||||||
txt_a200 db '’¥ªáâãà ¬ â¥à¨ « 1',0
|
txt_a030 db '‡¥àª «ìë© æ¢¥â',0
|
||||||
txt_a300 db 'ˆ¬ï ä ©« ⥪áâãàë',0
|
txt_a100 db '’¨¯ ¬ â¥à¨ « [1=flat 2=gouraud 3=phong 4=metal]',0
|
||||||
;txt_a353 db 'MAT_MAP_TEXBLUR',0
|
txt_a200 db '’¥ªáâãà ¬ â¥à¨ « 1',0
|
||||||
txt_afff db 'Œ â¥à¨ «',0
|
txt_a300 db 'ˆ¬ï ä ©« ⥪áâãàë',0
|
||||||
txt_b000 db 'ˆä®à¬ æ¨ï ®¡ ¨¬ 樨',0
|
;txt_a353 db 'MAT_MAP_TEXBLUR',0
|
||||||
txt_b002 db '<27>®¢¥¤¥¨¥ ®¡ê¥ªâ ',0
|
txt_afff db 'Œ â¥à¨ «',0
|
||||||
;txt_b009 db 'KFCURTIME',0
|
txt_b000 db 'ˆä®à¬ æ¨ï ®¡ ¨¬ 樨',0
|
||||||
;txt_b00a db 'KFHDR',0
|
txt_b002 db '<27>®¢¥¤¥¨¥ ®¡ê¥ªâ ',0
|
||||||
txt_b010 db '<27> §¢ ¨¥ ®¡ê¥ªâ ',0
|
;txt_b009 db 'KFCURTIME',0
|
||||||
txt_b011 db 'ˆ¬ï íª§¥¬¯«ïà ',0
|
;txt_b00a db 'KFHDR',0
|
||||||
txt_b013 db '–¥âà ¢à é¥¨ï ®¡ê¥ªâ ',0
|
txt_b010 db '<27> §¢ ¨¥ ®¡ê¥ªâ ',0
|
||||||
txt_b014 db 'Bound box',0
|
txt_b011 db 'ˆ¬ï íª§¥¬¯«ïà ',0
|
||||||
txt_b020 db '’à ¥ªâ®à¨ï ¤¢¨¦¥¨ï',0
|
txt_b013 db '–¥âà ¢à é¥¨ï ®¡ê¥ªâ ',0
|
||||||
txt_b021 db '’à ¥ªâ®à¨ï ¢à 饨ï',0
|
txt_b014 db 'Bound box',0
|
||||||
txt_b003 db '<27>®¢¥¤¥¨¥ ª ¬¥àë',0
|
txt_b020 db '’à ¥ªâ®à¨ï ¤¢¨¦¥¨ï',0
|
||||||
txt_b023 db '<27>®¢¥¤¥¨¥ fov ª ¬¥àë',0
|
txt_b021 db '’à ¥ªâ®à¨ï ¢à 饨ï',0
|
||||||
txt_b024 db '<27>®¢¥¤¥¨¥ roll ª ¬¥àë',0
|
txt_b003 db '<27>®¢¥¤¥¨¥ ª ¬¥àë',0
|
||||||
txt_b004 db '<27>®¢¥¤¥¨¥ "楫¨" ª ¬¥àë',0
|
txt_b023 db '<27>®¢¥¤¥¨¥ fov ª ¬¥àë',0
|
||||||
|
txt_b024 db '<27>®¢¥¤¥¨¥ roll ª ¬¥àë',0
|
||||||
;--- ¤ «¥¥ ¥ ¢® ¢á¥å ¡«®ª å ᬮ£ ©â¨ ®¯¨á ¨¥ àãá᪮¬ ï§ëª¥
|
txt_b004 db '<27>®¢¥¤¥¨¥ "楫¨" ª ¬¥àë',0
|
||||||
txt_4111 db '”« £¨ ¢¥àè¨',0
|
|
||||||
txt_4150 db 'Smoothing group list',0
|
;--- ¤ «¥¥ ¥ ¢® ¢á¥å ¡«®ª å ᬮ£ ©â¨ ®¯¨á ¨¥ àãá᪮¬ ï§ëª¥
|
||||||
txt_4165 db 'Object color in editor',0
|
txt_4111 db '”« £¨ ¢¥àè¨',0
|
||||||
txt_4610 db '<27> ¯à ¢«¥ë© ᢥâ',0
|
txt_4150 db 'Smoothing group list',0
|
||||||
txt_4627 db 'Spot raytrace',0
|
txt_4165 db 'Object color in editor',0
|
||||||
txt_4630 db 'Light shadowed',0
|
txt_4610 db '<27> ¯à ¢«¥ë© ᢥâ',0
|
||||||
txt_4641 db 'Spot shadow map',0
|
txt_4627 db 'Spot raytrace',0
|
||||||
txt_4650 db 'Spot show cone',0
|
txt_4630 db 'Light shadowed',0
|
||||||
txt_4651 db 'Spot is rectangular',0
|
txt_4641 db 'Spot shadow map',0
|
||||||
txt_4652 db 'Spot overshoot',0
|
txt_4650 db 'Spot show cone',0
|
||||||
txt_4653 db 'Spot map',0
|
txt_4651 db 'Spot is rectangular',0
|
||||||
txt_4656 db 'Spot roll',0
|
txt_4652 db 'Spot overshoot',0
|
||||||
txt_4658 db 'Spot ray trace bias',0
|
txt_4653 db 'Spot map',0
|
||||||
txt_4620 db 'Light off',0
|
txt_4656 db 'Spot roll',0
|
||||||
txt_4625 db 'Attenuation on',0
|
txt_4658 db 'Spot ray trace bias',0
|
||||||
txt_4659 db 'Range start',0
|
txt_4620 db 'Light off',0
|
||||||
txt_465a db 'Range end',0
|
txt_4625 db 'Attenuation on',0
|
||||||
txt_465b db 'Multiplier',0
|
txt_4659 db 'Range start',0
|
||||||
txt_a230 db '<27> §¬¥âª ५ì¥ä ',0
|
txt_465a db 'Range end',0
|
||||||
txt_a220 db '<27> §¬¥âª ®âà ¦¥¨ï',0
|
txt_465b db 'Multiplier',0
|
||||||
txt_a351 db '<27> à ¬¥âàë à §¬¥âª¨',0
|
txt_a230 db '<27> §¬¥âª ५ì¥ä ',0
|
||||||
txt_b007 db 'ˆä®à¬ æ¨ï ® ¯à ¢«¥®¬ ®á¢¥é¥¨¨',0
|
txt_a220 db '<27> §¬¥âª ®âà ¦¥¨ï',0
|
||||||
txt_b008 db 'Š ¤àë ( ç «ìë© ¨ ª®¥çë©)',0
|
txt_a351 db '<27> à ¬¥âàë à §¬¥âª¨',0
|
||||||
txt_b022 db 'Œ áèâ ¡¨à®¢ ¨¥',0
|
txt_b007 db 'ˆä®à¬ æ¨ï ® ¯à ¢«¥®¬ ®á¢¥é¥¨¨',0
|
||||||
txt_b030 db '<27>®§¨æ¨ï ¢ ¨¥à à娨',0
|
txt_b008 db 'Š ¤àë ( ç «ìë© ¨ ª®¥çë©)',0
|
||||||
txt_a040 db 'Shininess percent',0
|
txt_b022 db 'Œ áèâ ¡¨à®¢ ¨¥',0
|
||||||
txt_a041 db 'Shininess strength percent',0
|
txt_b030 db '<27>®§¨æ¨ï ¢ ¨¥à à娨',0
|
||||||
txt_a050 db 'Transparency percent',0
|
txt_a040 db 'Shininess percent',0
|
||||||
txt_a052 db 'Transparency falloff percent',0
|
txt_a041 db 'Shininess strength percent',0
|
||||||
txt_a053 db 'Reflection blur percent',0
|
txt_a050 db 'Transparency percent',0
|
||||||
txt_a081 db '2 sided',0
|
txt_a052 db 'Transparency falloff percent',0
|
||||||
txt_a083 db 'Add trans',0
|
txt_a053 db 'Reflection blur percent',0
|
||||||
txt_a084 db 'Self illum',0
|
txt_a081 db '2 sided',0
|
||||||
txt_a085 db 'Wire frame on',0
|
txt_a083 db 'Add trans',0
|
||||||
txt_a087 db 'Wire thickness',0
|
txt_a084 db 'Self illum',0
|
||||||
txt_a088 db 'Face map',0
|
txt_a085 db 'Wire frame on',0
|
||||||
txt_a08a db 'In tranc',0
|
txt_a087 db 'Wire thickness',0
|
||||||
txt_a08c db 'Soften',0
|
txt_a088 db 'Face map',0
|
||||||
txt_a08e db 'Wire in units',0
|
txt_a08a db 'In tranc',0
|
||||||
|
txt_a08c db 'Soften',0
|
||||||
txt_not_delete db '<27>¥ ¬®£ã 㤠«¨âì ¢ë¡à ë© ¡«®ª. Ž § é¨é¥.',0
|
txt_a08e db 'Wire in units',0
|
||||||
else
|
|
||||||
|
txt_not_delete db '<27>¥ ¬®£ã 㤠«¨âì ¢ë¡à ë© ¡«®ª. Ž § é¨é¥.',0
|
||||||
txt_0002 db '3ds version',0
|
|
||||||
txt_0011 db 'Color rgb (byte format)',0
|
else ; Default to en_US
|
||||||
txt_0100 db 'Master scale',0
|
|
||||||
txt_2100 db 'Ambient color',0
|
txt_0002 db '3ds version',0
|
||||||
txt_3d3d db 'Editor chunk',0
|
txt_0011 db 'Color rgb (byte format)',0
|
||||||
txt_4000 db 'Object (with name)',0
|
txt_0100 db 'Master scale',0
|
||||||
txt_4100 db 'Triangular mesh',0
|
txt_2100 db 'Ambient color',0
|
||||||
txt_4110 db 'Vertices list',0
|
txt_3d3d db 'Editor chunk',0
|
||||||
txt_4120 db 'Faces description',0
|
txt_4000 db 'Object (with name)',0
|
||||||
txt_4130 db 'Faces material',0
|
txt_4100 db 'Triangular mesh',0
|
||||||
txt_4140 db 'Mapping coordinates list',0
|
txt_4110 db 'Vertices list',0
|
||||||
txt_4160 db 'Local coordinate system',0
|
txt_4120 db 'Faces description',0
|
||||||
txt_4600 db 'Light',0
|
txt_4130 db 'Faces material',0
|
||||||
txt_4700 db 'Camera',0
|
txt_4140 db 'Mapping coordinates list',0
|
||||||
txt_a000 db 'Material name',0
|
txt_4160 db 'Local coordinate system',0
|
||||||
txt_a010 db 'Ambient color',0
|
txt_4600 db 'Light',0
|
||||||
txt_a020 db 'Diffuse color',0
|
txt_4700 db 'Camera',0
|
||||||
txt_a030 db 'Specular color',0
|
txt_a000 db 'Material name',0
|
||||||
txt_a100 db 'Material type [1=flat 2=gouraud 3=phong 4=metal]',0
|
txt_a010 db 'Ambient color',0
|
||||||
txt_a200 db 'Texture map 1',0
|
txt_a020 db 'Diffuse color',0
|
||||||
txt_a300 db 'Mapping filename',0
|
txt_a030 db 'Specular color',0
|
||||||
txt_afff db 'Meterial',0
|
txt_a100 db 'Material type [1=flat 2=gouraud 3=phong 4=metal]',0
|
||||||
txt_b000 db 'Keyframer',0
|
txt_a200 db 'Texture map 1',0
|
||||||
txt_b002 db 'Mesh information',0
|
txt_a300 db 'Mapping filename',0
|
||||||
txt_b010 db 'Object name',0
|
txt_afff db 'Meterial',0
|
||||||
txt_b011 db 'Instance name',0
|
txt_b000 db 'Keyframer',0
|
||||||
txt_b013 db 'Object pivot point',0
|
txt_b002 db 'Mesh information',0
|
||||||
txt_b014 db 'Bound box',0
|
txt_b010 db 'Object name',0
|
||||||
txt_b020 db 'Position track',0
|
txt_b011 db 'Instance name',0
|
||||||
txt_b021 db 'Rotation track',0
|
txt_b013 db 'Object pivot point',0
|
||||||
txt_b003 db 'Camera information',0
|
txt_b014 db 'Bound box',0
|
||||||
txt_b023 db 'Fov track',0
|
txt_b020 db 'Position track',0
|
||||||
txt_b024 db 'Roll track',0
|
txt_b021 db 'Rotation track',0
|
||||||
txt_b004 db 'Camera target information',0
|
txt_b003 db 'Camera information',0
|
||||||
|
txt_b023 db 'Fov track',0
|
||||||
;---
|
txt_b024 db 'Roll track',0
|
||||||
txt_4111 db 'Vertex flags',0
|
txt_b004 db 'Camera target information',0
|
||||||
txt_4150 db 'Smoothing group list',0
|
|
||||||
txt_4165 db 'Object color in editor',0
|
;---
|
||||||
txt_4610 db 'Spotlight',0
|
txt_4111 db 'Vertex flags',0
|
||||||
txt_4627 db 'Spot raytrace',0
|
txt_4150 db 'Smoothing group list',0
|
||||||
txt_4630 db 'Light shadowed',0
|
txt_4165 db 'Object color in editor',0
|
||||||
txt_4641 db 'Spot shadow map',0
|
txt_4610 db 'Spotlight',0
|
||||||
txt_4650 db 'Spot show cone',0
|
txt_4627 db 'Spot raytrace',0
|
||||||
txt_4651 db 'Spot is rectangular',0
|
txt_4630 db 'Light shadowed',0
|
||||||
txt_4652 db 'Spot overshoot',0
|
txt_4641 db 'Spot shadow map',0
|
||||||
txt_4653 db 'Spot map',0
|
txt_4650 db 'Spot show cone',0
|
||||||
txt_4656 db 'Spot roll',0
|
txt_4651 db 'Spot is rectangular',0
|
||||||
txt_4658 db 'Spot ray trace bias',0
|
txt_4652 db 'Spot overshoot',0
|
||||||
txt_4620 db 'Light off',0
|
txt_4653 db 'Spot map',0
|
||||||
txt_4625 db 'Attenuation on',0
|
txt_4656 db 'Spot roll',0
|
||||||
txt_4659 db 'Range start',0
|
txt_4658 db 'Spot ray trace bias',0
|
||||||
txt_465a db 'Range end',0
|
txt_4620 db 'Light off',0
|
||||||
txt_465b db 'Multiplier',0
|
txt_4625 db 'Attenuation on',0
|
||||||
txt_a230 db 'Bump map',0
|
txt_4659 db 'Range start',0
|
||||||
txt_a220 db 'Reflection map',0
|
txt_465a db 'Range end',0
|
||||||
txt_a351 db 'Mapping parameters',0
|
txt_465b db 'Multiplier',0
|
||||||
txt_b007 db 'Spot light information',0
|
txt_a230 db 'Bump map',0
|
||||||
txt_b008 db 'Frames (Start and End)',0
|
txt_a220 db 'Reflection map',0
|
||||||
txt_b022 db 'Scale track',0
|
txt_a351 db 'Mapping parameters',0
|
||||||
txt_b030 db 'Hierarchy position',0
|
txt_b007 db 'Spot light information',0
|
||||||
txt_a040 db 'Shininess percent',0
|
txt_b008 db 'Frames (Start and End)',0
|
||||||
txt_a041 db 'Shininess strength percent',0
|
txt_b022 db 'Scale track',0
|
||||||
txt_a050 db 'Transparency percent',0
|
txt_b030 db 'Hierarchy position',0
|
||||||
txt_a052 db 'Transparency falloff percent',0
|
txt_a040 db 'Shininess percent',0
|
||||||
txt_a053 db 'Reflection blur percent',0
|
txt_a041 db 'Shininess strength percent',0
|
||||||
txt_a081 db '2 sided',0
|
txt_a050 db 'Transparency percent',0
|
||||||
txt_a083 db 'Add trans',0
|
txt_a052 db 'Transparency falloff percent',0
|
||||||
txt_a084 db 'Self illum',0
|
txt_a053 db 'Reflection blur percent',0
|
||||||
txt_a085 db 'Wire frame on',0
|
txt_a081 db '2 sided',0
|
||||||
txt_a087 db 'Wire thickness',0
|
txt_a083 db 'Add trans',0
|
||||||
txt_a088 db 'Face map',0
|
txt_a084 db 'Self illum',0
|
||||||
txt_a08a db 'In tranc',0
|
txt_a085 db 'Wire frame on',0
|
||||||
txt_a08c db 'Soften',0
|
txt_a087 db 'Wire thickness',0
|
||||||
txt_a08e db 'Wire in units',0
|
txt_a088 db 'Face map',0
|
||||||
|
txt_a08a db 'In tranc',0
|
||||||
txt_not_delete db 'I can not delete the selected chunk. It is protected.',0
|
txt_a08c db 'Soften',0
|
||||||
end if
|
txt_a08e db 'Wire in units',0
|
||||||
|
|
||||||
if lang eq ru_RU
|
txt_not_delete db 'Cannot delete the selected chunk: it is protected.',0
|
||||||
txt_open_3ds db 'Žâªàëâ ä ©«:',0
|
end if
|
||||||
txt_no_3ds: db 'Žâªàëâë© ä ©« ¥ ¢ ä®à¬ ⥠*.3ds ',39
|
|
||||||
.zag: rb 8
|
if lang eq ru_RU
|
||||||
db 39,0
|
txt_open_3ds db 'Žâªàëâ ä ©«:',0
|
||||||
txt_3ds_err_sizes db '‚®§¬®¦® ä ©« ¯®¢à¥¦¤¥',0
|
txt_no_3ds: db 'Žâªàëâë© ä ©« ¥ ¢ ä®à¬ ⥠*.3ds ',39
|
||||||
txt_count db 'Š®«¨ç¥á⢮',0
|
.zag: rb 8
|
||||||
txt_3ds_offs:
|
db 39,0
|
||||||
db '‘¬¥é¥¨¥: '
|
txt_3ds_err_sizes db '‚®§¬®¦® ä ©« ¯®¢à¥¦¤¥',0
|
||||||
.dig: rb 8
|
txt_count db 'Š®«¨ç¥á⢮',0
|
||||||
db ' <20> §¬¥à: '
|
txt_3ds_offs:
|
||||||
.siz: rb 8
|
db '‘¬¥é¥¨¥: '
|
||||||
db 0
|
.dig: rb 8
|
||||||
txt_mat_null db 'Œ â¥à¨ «ë ¥ ©¤¥ë',0
|
db ' <20> §¬¥à: '
|
||||||
else
|
.siz: rb 8
|
||||||
txt_open_3ds db 'Open file:',0
|
db 0
|
||||||
txt_no_3ds: db 'Open file not in format *.3ds ',39
|
txt_mat_null db 'Œ â¥à¨ «ë ¥ ©¤¥ë',0
|
||||||
.zag: rb 8
|
|
||||||
db 39,0
|
else ; Default to en_US
|
||||||
txt_3ds_err_sizes db 'File may be corrupted',0
|
txt_open_3ds db 'Open file:',0
|
||||||
txt_count db 'Count',0
|
txt_no_3ds: db 'Open file not in format *.3ds ',39
|
||||||
txt_3ds_offs:
|
.zag: rb 8
|
||||||
db 'Offset: '
|
db 39,0
|
||||||
.dig: rb 8
|
txt_3ds_err_sizes db 'File may be corrupted',0
|
||||||
db ' Size: '
|
txt_count db 'Count',0
|
||||||
.siz: rb 8
|
txt_3ds_offs:
|
||||||
db 0
|
db 'Offset: '
|
||||||
txt_mat_null db 'No materials found',0
|
.dig: rb 8
|
||||||
end if
|
db ' Size: '
|
||||||
|
.siz: rb 8
|
||||||
|
db 0
|
||||||
|
txt_mat_null db 'No materials found',0
|
||||||
|
end if
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1 +1,55 @@
|
|||||||
if lang eq ru_RU
sz_main_menu_View db '‚¨¤', 0
sz_main_menu_Veiw_Vertexes db '‚¥àè¨ë ¢ª«.', 0
sz_main_menu_Veiw_Faces db 'Š ઠáë¥ £à ¨ ¢ª«.', 0
sz_main_menu_Veiw_Faces_Fill db '‘¯«®èë¥ £à ¨ ¢ª«.', 0
sz_main_menu_Veiw_Light db '‘¢¥â ¢ª«./¢ëª«.', 0
sz_main_menu_Veiw_Smooth db '‘£« ¦¨¢ ¨¥ ¢ª«./¢ëª«.', 0
sz_main_menu_Veiw_Reset db '‘¡à®á áâ஥ª', 0
if version_edit eq 0
sz_main_menu_Veiw_Faces_Mat db '<27> §®æ¢¥âë¥ £à ¨ ¢ª«.', 0
else
sz_main_menu_Vertexes db '‚¥àè¨ë', 0
sz_main_menu_Vertexes_Select db '‚뤥«¨âì ¢¥àè¨ã', 0
sz_main_menu_Vertexes_Deselect db 'Žâ¬¥¨âì ¢áñ ¢ë¤¥«¥¨¥', 0
sz_main_menu_Average_x db '‘।¥¥ x',0
sz_main_menu_Average_y db '‘।¥¥ y',0
sz_main_menu_Average_z db '‘।¥¥ z',0
end if
else
sz_main_menu_View db 'View', 0
sz_main_menu_Veiw_Vertexes db 'Vertexes on', 0
sz_main_menu_Veiw_Faces db 'Edges on', 0
sz_main_menu_Veiw_Faces_Fill db 'Faces on', 0
sz_main_menu_Veiw_Light db 'Light on/off', 0
sz_main_menu_Veiw_Smooth db 'Smooth on/off', 0
sz_main_menu_Veiw_Reset db 'Reset settings', 0
if version_edit eq 0
sz_main_menu_Veiw_Faces_Mat db 'Diferent color faces on', 0
else
sz_main_menu_Vertexes db 'Vertexes', 0
sz_main_menu_Vertexes_Select db 'Select vertex', 0
sz_main_menu_Vertexes_Deselect db 'Deselect all', 0
sz_main_menu_Average_x db 'Average x',0
sz_main_menu_Average_y db 'Average y',0
sz_main_menu_Average_z db 'Average z',0
end if
end if
main_menu dd 0
main_menu_file dd 0
main_menu_view dd 0
main_menu_vertexes dd 0
KMENUITEM_NORMAL equ 0
KMENUITEM_SUBMENU equ 1
KMENUITEM_SEPARATOR equ 2
|
|
||||||
|
; Language support for locales: ru_RU (CP866), en_US.
|
||||||
|
|
||||||
|
if lang eq ru_RU
|
||||||
|
|
||||||
|
sz_main_menu_View db '‚¨¤', 0
|
||||||
|
sz_main_menu_Veiw_Vertexes db '‚¥àè¨ë ¢ª«.', 0
|
||||||
|
sz_main_menu_Veiw_Faces db 'Š ઠáë¥ £à ¨ ¢ª«.', 0
|
||||||
|
sz_main_menu_Veiw_Faces_Fill db '‘¯«®èë¥ £à ¨ ¢ª«.', 0
|
||||||
|
sz_main_menu_Veiw_Light db '‘¢¥â ¢ª«./¢ëª«.', 0
|
||||||
|
sz_main_menu_Veiw_Smooth db '‘£« ¦¨¢ ¨¥ ¢ª«./¢ëª«.', 0
|
||||||
|
sz_main_menu_Veiw_Reset db '‘¡à®á áâ஥ª', 0
|
||||||
|
|
||||||
|
if version_edit eq 0
|
||||||
|
sz_main_menu_Veiw_Faces_Mat db '<27> §®æ¢¥âë¥ £à ¨ ¢ª«.', 0
|
||||||
|
else
|
||||||
|
sz_main_menu_Vertexes db '‚¥àè¨ë', 0
|
||||||
|
sz_main_menu_Vertexes_Select db '‚뤥«¨âì ¢¥àè¨ã', 0
|
||||||
|
sz_main_menu_Vertexes_Deselect db 'Žâ¬¥¨âì ¢áñ ¢ë¤¥«¥¨¥', 0
|
||||||
|
sz_main_menu_Average_x db '‘।¥¥ x',0
|
||||||
|
sz_main_menu_Average_y db '‘।¥¥ y',0
|
||||||
|
sz_main_menu_Average_z db '‘।¥¥ z',0
|
||||||
|
end if
|
||||||
|
|
||||||
|
else ; Default to en_US
|
||||||
|
|
||||||
|
sz_main_menu_View db 'View', 0
|
||||||
|
sz_main_menu_Veiw_Vertexes db 'Vertexes on', 0
|
||||||
|
sz_main_menu_Veiw_Faces db 'Edges on', 0
|
||||||
|
sz_main_menu_Veiw_Faces_Fill db 'Faces on', 0
|
||||||
|
sz_main_menu_Veiw_Light db 'Light on/off', 0
|
||||||
|
sz_main_menu_Veiw_Smooth db 'Smooth on/off', 0
|
||||||
|
sz_main_menu_Veiw_Reset db 'Reset settings', 0
|
||||||
|
|
||||||
|
if version_edit eq 0
|
||||||
|
sz_main_menu_Veiw_Faces_Mat db 'Diferent color faces on', 0
|
||||||
|
else
|
||||||
|
sz_main_menu_Vertexes db 'Vertexes', 0
|
||||||
|
sz_main_menu_Vertexes_Select db 'Select vertex', 0
|
||||||
|
sz_main_menu_Vertexes_Deselect db 'Deselect all', 0
|
||||||
|
sz_main_menu_Average_x db 'Average x',0
|
||||||
|
sz_main_menu_Average_y db 'Average y',0
|
||||||
|
sz_main_menu_Average_z db 'Average z',0
|
||||||
|
end if
|
||||||
|
|
||||||
|
end if
|
||||||
|
|
||||||
|
main_menu dd 0
|
||||||
|
main_menu_file dd 0
|
||||||
|
main_menu_view dd 0
|
||||||
|
main_menu_vertexes dd 0
|
||||||
|
|
||||||
|
KMENUITEM_NORMAL equ 0
|
||||||
|
KMENUITEM_SUBMENU equ 1
|
||||||
|
KMENUITEM_SEPARATOR equ 2
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,318 +1,318 @@
|
|||||||
; <20>à®£à ¬¬ ¤«ï ¯à¥®¡à §®¢ ¨ï ç¨á¥« ¨§ áâப¨
|
; <20>à®£à ¬¬ ¤«ï ¯à¥®¡à §®¢ ¨ï ç¨á¥« ¨§ áâப¨
|
||||||
; ¢ ä®à¬ â float, double, â ª¦¥ ¨§ 10 ¨«¨ 16 à¨ç®£®
|
; ¢ ä®à¬ â float, double, â ª¦¥ ¨§ 10 ¨«¨ 16 à¨ç®£®
|
||||||
; ¢® float.
|
; ¢® float.
|
||||||
; ‘¤¥« ®á®¢¥ hex2dec2bin ¨ ¯à¨¬¥à®¢ ¨§ ä ©« list2_05.inc
|
; ‘¤¥« ®á®¢¥ hex2dec2bin ¨ ¯à¨¬¥à®¢ ¨§ ä ©« list2_05.inc
|
||||||
; ( ¢â®à Šã« ª®¢ ‚« ¤¨¬¨à ƒ¥ ¤ì¥¢¨ç 24.05.2002),
|
; ( ¢â®à Šã« ª®¢ ‚« ¤¨¬¨à ƒ¥ ¤ì¥¢¨ç 24.05.2002),
|
||||||
; ª®â®àë¥ ChE ¯¥à¥¤¥« « á 16 32 ¡¨â áᥬ¡«¥à fasm.
|
; ª®â®àë¥ ChE ¯¥à¥¤¥« « á 16 32 ¡¨â áᥬ¡«¥à fasm.
|
||||||
; <20>à®£à ¬¬ ¯®§¢®«ï¥â à¥è âì â ª¨¥ § ¤ ç¨:
|
; <20>à®£à ¬¬ ¯®§¢®«ï¥â à¥è âì â ª¨¥ § ¤ ç¨:
|
||||||
; 1) ç¨á«® ¢ áâப®¢®¬ ¢¨¤¥ ¯¥à¥¢¥á⨠¢ 4 ¡ ©â (float) ¢ ¬ è¨ë© ¢¨¤
|
; 1) ç¨á«® ¢ áâப®¢®¬ ¢¨¤¥ ¯¥à¥¢¥á⨠¢ 4 ¡ ©â (float) ¢ ¬ è¨ë© ¢¨¤
|
||||||
; 2) ç¨á«® ¢ áâப®¢®¬ ¢¨¤¥ ¯¥à¥¢¥á⨠¢ 8 ¡ ©â (double) ¢ ¬ è¨ë© ¢¨¤
|
; 2) ç¨á«® ¢ áâப®¢®¬ ¢¨¤¥ ¯¥à¥¢¥á⨠¢ 8 ¡ ©â (double) ¢ ¬ è¨ë© ¢¨¤
|
||||||
; 3) ç¨á«® ¢ ¬ 訮¬ ¢¨¤¥ (float) ¯¥à¥¢¥á⨠¢ áâப®¢ë© ¢¨¤ (5 § ª®¢ ¯®á«¥ § ¯ï⮩)
|
; 3) ç¨á«® ¢ ¬ 訮¬ ¢¨¤¥ (float) ¯¥à¥¢¥á⨠¢ áâப®¢ë© ¢¨¤ (5 § ª®¢ ¯®á«¥ § ¯ï⮩)
|
||||||
|
|
||||||
use32
|
use32
|
||||||
org 0
|
org 0
|
||||||
db 'MENUET01'
|
db 'MENUET01'
|
||||||
dd 1,start,i_end,e_end,e_end,0,sys_path
|
dd 1,start,i_end,e_end,e_end,0,sys_path
|
||||||
|
|
||||||
include '../../../proc32.inc'
|
include '../../../proc32.inc'
|
||||||
include '../../../macros.inc'
|
include '../../../macros.inc'
|
||||||
include '../../../KOSfuncs.inc'
|
include '../../../KOSfuncs.inc'
|
||||||
include '../../../load_lib.mac'
|
include '../../../load_lib.mac'
|
||||||
include '../../../develop/libraries/box_lib/trunk/box_lib.mac'
|
include '../../../develop/libraries/box_lib/trunk/box_lib.mac'
|
||||||
include '../../../develop/info3ds/info_fun_float.inc'
|
include '../../../develop/info3ds/info_fun_float.inc'
|
||||||
include 'lang.inc'
|
include 'lang.inc' ; Language support for locales: ru_RU (CP866), en_US.
|
||||||
|
|
||||||
@use_library
|
@use_library
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
start:
|
start:
|
||||||
load_libraries l_libs_start,l_libs_end
|
load_libraries l_libs_start,l_libs_end
|
||||||
;¯à®¢¥àª ᪮«ìª® ã¤ ç® § £ã§¨« áì è ¡¨¡«¨®â¥ª
|
;¯à®¢¥àª ᪮«ìª® ã¤ ç® § £ã§¨« áì è ¡¨¡«¨®â¥ª
|
||||||
mov ebp,lib_0
|
mov ebp,lib_0
|
||||||
cmp dword[ebp+ll_struc_size-4],0
|
cmp dword[ebp+ll_struc_size-4],0
|
||||||
jz @f
|
jz @f
|
||||||
mcall SF_TERMINATE_PROCESS
|
mcall SF_TERMINATE_PROCESS
|
||||||
@@:
|
@@:
|
||||||
mcall SF_SET_EVENTS_MASK,0xC0000027
|
mcall SF_SET_EVENTS_MASK,0xC0000027
|
||||||
mcall SF_STYLE_SETTINGS,SSF_GET_COLORS, sys_colors, sizeof.system_colors
|
mcall SF_STYLE_SETTINGS,SSF_GET_COLORS, sys_colors, sizeof.system_colors
|
||||||
edit_boxes_set_sys_color edit1,editboxes_end,sys_colors
|
edit_boxes_set_sys_color edit1,editboxes_end,sys_colors
|
||||||
option_boxes_set_sys_color sys_colors,Option_boxes1
|
option_boxes_set_sys_color sys_colors,Option_boxes1
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
red:
|
red:
|
||||||
call draw_window
|
call draw_window
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
still:
|
still:
|
||||||
mcall SF_WAIT_EVENT
|
mcall SF_WAIT_EVENT
|
||||||
|
|
||||||
cmp eax,1 ; ¯¥à¥à¨á®¢ âì ®ª® ?
|
cmp eax,1 ; ¯¥à¥à¨á®¢ âì ®ª® ?
|
||||||
je red ; ¥á«¨ ¤ - ¬¥âªã red
|
je red ; ¥á«¨ ¤ - ¬¥âªã red
|
||||||
cmp eax,2 ; ¦ â ª« ¢¨è ?
|
cmp eax,2 ; ¦ â ª« ¢¨è ?
|
||||||
je key ; ¥á«¨ ¤ - key
|
je key ; ¥á«¨ ¤ - key
|
||||||
cmp eax,3 ; ¦ â ª®¯ª ?
|
cmp eax,3 ; ¦ â ª®¯ª ?
|
||||||
je button ; ¥á«¨ ¤ - button
|
je button ; ¥á«¨ ¤ - button
|
||||||
cmp eax,6
|
cmp eax,6
|
||||||
je mouse
|
je mouse
|
||||||
|
|
||||||
jmp still ; ¥á«¨ ¤à㣮¥ ᮡë⨥ - ¢ ç «® 横«
|
jmp still ; ¥á«¨ ¤à㣮¥ ᮡë⨥ - ¢ ç «® 横«
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
key: ; ¦ â ª« ¢¨è ª« ¢¨ âãà¥
|
key: ; ¦ â ª« ¢¨è ª« ¢¨ âãà¥
|
||||||
mcall SF_GET_KEY
|
mcall SF_GET_KEY
|
||||||
;cmp ah,13
|
;cmp ah,13
|
||||||
stdcall [edit_box_key], edit1
|
stdcall [edit_box_key], edit1
|
||||||
jmp still ; ¢¥àãâìáï ª ç «ã 横«
|
jmp still ; ¢¥àãâìáï ª ç «ã 横«
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
button:
|
button:
|
||||||
mcall SF_GET_BUTTON
|
mcall SF_GET_BUTTON
|
||||||
cmp ah, 1 ; ¥á«¨ <20>… ¦ â ª®¯ª á ®¬¥à®¬ 1,
|
cmp ah, 1 ; ¥á«¨ <20>… ¦ â ª®¯ª á ®¬¥à®¬ 1,
|
||||||
jne @f
|
jne @f
|
||||||
mcall SF_TERMINATE_PROCESS
|
mcall SF_TERMINATE_PROCESS
|
||||||
@@:
|
@@:
|
||||||
cmp ah, 5
|
cmp ah, 5
|
||||||
jne @f
|
jne @f
|
||||||
cmp dword[option_group1],opt3
|
cmp dword[option_group1],opt3
|
||||||
jne .opt_3_end
|
jne .opt_3_end
|
||||||
stdcall conv_str_to_int,[edit1.text]
|
stdcall conv_str_to_int,[edit1.text]
|
||||||
mov dword[Data_Double],eax
|
mov dword[Data_Double],eax
|
||||||
finit
|
finit
|
||||||
fld dword[Data_Double]
|
fld dword[Data_Double]
|
||||||
fstp qword[Data_Double]
|
fstp qword[Data_Double]
|
||||||
|
|
||||||
; Data_Double - ¯à¥®¡à §ã¥¬®¥ ç¨á«®
|
; Data_Double - ¯à¥®¡à §ã¥¬®¥ ç¨á«®
|
||||||
mov word[NumberSymbolsAD],8 ; ª®«¨ç¥á⢮ § ª®¢ ç¨á« ¯®á«¥ § ¯ï⮩ (1-17)
|
mov word[NumberSymbolsAD],8 ; ª®«¨ç¥á⢮ § ª®¢ ç¨á« ¯®á«¥ § ¯ï⮩ (1-17)
|
||||||
call DoubleFloat_to_String
|
call DoubleFloat_to_String
|
||||||
call String_crop_0
|
call String_crop_0
|
||||||
mov dword[Data_Double],eax ;¢®ááâ ¢«¨¢ ¥¬ § 票¥ ¢ ä®à¬ ⥠float
|
mov dword[Data_Double],eax ;¢®ááâ ¢«¨¢ ¥¬ § 票¥ ¢ ä®à¬ ⥠float
|
||||||
jmp .opt_all_end
|
jmp .opt_all_end
|
||||||
.opt_3_end:
|
.opt_3_end:
|
||||||
|
|
||||||
mov esi,string1
|
mov esi,string1
|
||||||
mov edi,Data_String
|
mov edi,Data_String
|
||||||
cld
|
cld
|
||||||
mov ecx,32
|
mov ecx,32
|
||||||
rep movsb
|
rep movsb
|
||||||
|
|
||||||
call String_to_DoubleFloat
|
call String_to_DoubleFloat
|
||||||
cmp dword[option_group1],opt1
|
cmp dword[option_group1],opt1
|
||||||
jne .opt_all_end ;¥á«¨ ¢ë¡à float, â® ¯à¥®¡à §ã¥¬ ¨§ à ¥¥ ¯®«ã祮£® double
|
jne .opt_all_end ;¥á«¨ ¢ë¡à float, â® ¯à¥®¡à §ã¥¬ ¨§ à ¥¥ ¯®«ã祮£® double
|
||||||
finit
|
finit
|
||||||
fld qword[Data_Double] ;ç¨â ¥¬ ¨§ double
|
fld qword[Data_Double] ;ç¨â ¥¬ ¨§ double
|
||||||
fstp dword[Data_Double] ; ¢®§¢à é ¥¬ ¢® float
|
fstp dword[Data_Double] ; ¢®§¢à é ¥¬ ¢® float
|
||||||
.opt_all_end:
|
.opt_all_end:
|
||||||
jmp red
|
jmp red
|
||||||
@@:
|
@@:
|
||||||
jmp still
|
jmp still
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
mouse:
|
mouse:
|
||||||
stdcall [edit_box_mouse], edit1
|
stdcall [edit_box_mouse], edit1
|
||||||
stdcall [option_box_mouse], Option_boxes1
|
stdcall [option_box_mouse], Option_boxes1
|
||||||
jmp still
|
jmp still
|
||||||
|
|
||||||
;------------------------------------------------
|
;------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
draw_window:
|
draw_window:
|
||||||
mcall SF_STYLE_SETTINGS,SSF_GET_COLORS, sys_colors, sizeof.system_colors
|
mcall SF_STYLE_SETTINGS,SSF_GET_COLORS, sys_colors, sizeof.system_colors
|
||||||
|
|
||||||
mcall SF_REDRAW,SSF_BEGIN_DRAW
|
mcall SF_REDRAW,SSF_BEGIN_DRAW
|
||||||
mov edx, 0x14000000
|
mov edx, 0x14000000
|
||||||
or edx, [sys_colors.work]
|
or edx, [sys_colors.work]
|
||||||
mcall SF_CREATE_WINDOW, (200 shl 16)+300, (200 shl 16)+175, ,,title
|
mcall SF_CREATE_WINDOW, (200 shl 16)+300, (200 shl 16)+175, ,,title
|
||||||
|
|
||||||
mcall SF_DEFINE_BUTTON, ((300-53) shl 16)+38, (145 shl 16)+15, 5, [sys_colors.work_button] ; ª®¯ª Ok
|
mcall SF_DEFINE_BUTTON, ((300-53) shl 16)+38, (145 shl 16)+15, 5, [sys_colors.work_button] ; ª®¯ª Ok
|
||||||
|
|
||||||
mov ecx, 0x80000000
|
mov ecx, 0x80000000
|
||||||
or ecx, [sys_colors.work_text]
|
or ecx, [sys_colors.work_text]
|
||||||
mcall SF_DRAW_TEXT, (15 shl 16) +30,, binstr,
|
mcall SF_DRAW_TEXT, (15 shl 16) +30,, binstr,
|
||||||
mcall , (15 shl 16) +58,, decstr,
|
mcall , (15 shl 16) +58,, decstr,
|
||||||
mcall , ((240-56*3) shl 16) +58,, Data_String,
|
mcall , ((240-56*3) shl 16) +58,, Data_String,
|
||||||
mcall , (15 shl 16) +72,, hexstr,
|
mcall , (15 shl 16) +72,, hexstr,
|
||||||
mcall , (15 shl 16)+150,, numstr,
|
mcall , (15 shl 16)+150,, numstr,
|
||||||
|
|
||||||
mov ecx, 0x80000000
|
mov ecx, 0x80000000
|
||||||
or ecx, [sys_colors.work_button_text]
|
or ecx, [sys_colors.work_button_text]
|
||||||
mcall , ((300-42) shl 16)+149, , Okstr,3
|
mcall , ((300-42) shl 16)+149, , Okstr,3
|
||||||
|
|
||||||
cmp dword[option_group1],opt1
|
cmp dword[option_group1],opt1
|
||||||
je @f ;¥á«¨ ¢ë¡à float, â® áâ à訥 4 ¡ ©â (¨§ double) ¥ ¯¥ç â ¥¬
|
je @f ;¥á«¨ ¢ë¡à float, â® áâ à訥 4 ¡ ©â (¨§ double) ¥ ¯¥ç â ¥¬
|
||||||
cmp dword[option_group1],opt3
|
cmp dword[option_group1],opt3
|
||||||
je @f ;¥á«¨ ¢ë¡à float, â® áâ à訥 4 ¡ ©â (¨§ double) ¥ ¯¥ç â ¥¬
|
je @f ;¥á«¨ ¢ë¡à float, â® áâ à訥 4 ¡ ©â (¨§ double) ¥ ¯¥ç â ¥¬
|
||||||
mov ecx, dword[Data_Double+4]
|
mov ecx, dword[Data_Double+4]
|
||||||
mcall SF_DRAW_NUMBER, (8 shl 16)+256,,(185 shl 16)+72,[sys_colors.work_text] ; 16- ï
|
mcall SF_DRAW_NUMBER, (8 shl 16)+256,,(185 shl 16)+72,[sys_colors.work_text] ; 16- ï
|
||||||
|
|
||||||
mov ecx, dword[Data_Double+4]
|
mov ecx, dword[Data_Double+4]
|
||||||
mcall ,(8 shl 16)+512,,(240 shl 16)+30, ; 2- ï
|
mcall ,(8 shl 16)+512,,(240 shl 16)+30, ; 2- ï
|
||||||
ror ecx, 8
|
ror ecx, 8
|
||||||
mcall ,,,((240-56) shl 16)+30,
|
mcall ,,,((240-56) shl 16)+30,
|
||||||
ror ecx, 8
|
ror ecx, 8
|
||||||
mcall ,,,((240-56*2) shl 16)+30,
|
mcall ,,,((240-56*2) shl 16)+30,
|
||||||
ror ecx, 8
|
ror ecx, 8
|
||||||
mcall ,,,((240-56*3) shl 16)+30,
|
mcall ,,,((240-56*3) shl 16)+30,
|
||||||
ror ecx, 8
|
ror ecx, 8
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
mov ecx,dword[Data_Double]
|
mov ecx,dword[Data_Double]
|
||||||
mcall SF_DRAW_NUMBER, (8 shl 16)+256,,(240 shl 16)+72,[sys_colors.work_text] ; 16- ï
|
mcall SF_DRAW_NUMBER, (8 shl 16)+256,,(240 shl 16)+72,[sys_colors.work_text] ; 16- ï
|
||||||
|
|
||||||
mov ecx,dword[Data_Double]
|
mov ecx,dword[Data_Double]
|
||||||
mcall , (8 shl 16)+512,,(240 shl 16)+44, ; 2- ï
|
mcall , (8 shl 16)+512,,(240 shl 16)+44, ; 2- ï
|
||||||
ror ecx, 8
|
ror ecx, 8
|
||||||
mcall ,,,((240-56) shl 16)+44,
|
mcall ,,,((240-56) shl 16)+44,
|
||||||
ror ecx, 8
|
ror ecx, 8
|
||||||
mcall ,,,((240-56*2) shl 16)+44,
|
mcall ,,,((240-56*2) shl 16)+44,
|
||||||
ror ecx, 8
|
ror ecx, 8
|
||||||
mcall ,,,((240-56*3) shl 16)+44,
|
mcall ,,,((240-56*3) shl 16)+44,
|
||||||
ror ecx, 8
|
ror ecx, 8
|
||||||
|
|
||||||
mcall SF_DRAW_LINE, (15 shl 16)+300-15, (137 shl 16)+137, [sys_colors.work_graph]
|
mcall SF_DRAW_LINE, (15 shl 16)+300-15, (137 shl 16)+137, [sys_colors.work_graph]
|
||||||
stdcall [edit_box_draw], edit1
|
stdcall [edit_box_draw], edit1
|
||||||
stdcall [option_box_draw], Option_boxes1
|
stdcall [option_box_draw], Option_boxes1
|
||||||
mcall SF_REDRAW,SSF_END_DRAW
|
mcall SF_REDRAW,SSF_END_DRAW
|
||||||
|
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
string1 db 32 dup (0)
|
string1 db 32 dup (0)
|
||||||
string1_end:
|
string1_end:
|
||||||
|
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
; buf - 㪠§ ⥫ì áâபã, ç¨á«® ¤®«¦® ¡ëâì ¢ 10 ¨«¨ 16 à¨ç®¬ ¢¨¤¥
|
; buf - 㪠§ ⥫ì áâபã, ç¨á«® ¤®«¦® ¡ëâì ¢ 10 ¨«¨ 16 à¨ç®¬ ¢¨¤¥
|
||||||
;output:
|
;output:
|
||||||
; eax - ç¨á«®
|
; eax - ç¨á«®
|
||||||
align 4
|
align 4
|
||||||
proc conv_str_to_int uses ebx ecx esi, buf:dword
|
proc conv_str_to_int uses ebx ecx esi, buf:dword
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
xor ebx,ebx
|
xor ebx,ebx
|
||||||
mov esi,[buf]
|
mov esi,[buf]
|
||||||
;®¯à¥¤¥«¥¨¥ ®âà¨æ ⥫ìëå ç¨á¥«
|
;®¯à¥¤¥«¥¨¥ ®âà¨æ ⥫ìëå ç¨á¥«
|
||||||
xor ecx,ecx
|
xor ecx,ecx
|
||||||
inc ecx
|
inc ecx
|
||||||
cmp byte[esi],'-'
|
cmp byte[esi],'-'
|
||||||
jne @f
|
jne @f
|
||||||
dec ecx
|
dec ecx
|
||||||
inc esi
|
inc esi
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
cmp word[esi],'0x'
|
cmp word[esi],'0x'
|
||||||
je .load_digit_16
|
je .load_digit_16
|
||||||
|
|
||||||
.load_digit_10: ;áç¨âë¢ ¨¥ 10-â¨çëå æ¨äà
|
.load_digit_10: ;áç¨âë¢ ¨¥ 10-â¨çëå æ¨äà
|
||||||
mov bl,byte[esi]
|
mov bl,byte[esi]
|
||||||
cmp bl,'0'
|
cmp bl,'0'
|
||||||
jl @f
|
jl @f
|
||||||
cmp bl,'9'
|
cmp bl,'9'
|
||||||
jg @f
|
jg @f
|
||||||
sub bl,'0'
|
sub bl,'0'
|
||||||
imul eax,10
|
imul eax,10
|
||||||
add eax,ebx
|
add eax,ebx
|
||||||
inc esi
|
inc esi
|
||||||
jmp .load_digit_10
|
jmp .load_digit_10
|
||||||
jmp @f
|
jmp @f
|
||||||
|
|
||||||
.load_digit_16: ;áç¨âë¢ ¨¥ 16-à¨çëå æ¨äà
|
.load_digit_16: ;áç¨âë¢ ¨¥ 16-à¨çëå æ¨äà
|
||||||
add esi,2
|
add esi,2
|
||||||
.cycle_16:
|
.cycle_16:
|
||||||
mov bl,byte[esi]
|
mov bl,byte[esi]
|
||||||
cmp bl,'0'
|
cmp bl,'0'
|
||||||
jl @f
|
jl @f
|
||||||
cmp bl,'f'
|
cmp bl,'f'
|
||||||
jg @f
|
jg @f
|
||||||
cmp bl,'9'
|
cmp bl,'9'
|
||||||
jle .us1
|
jle .us1
|
||||||
cmp bl,'A'
|
cmp bl,'A'
|
||||||
jl @f ;®âᥨ¢ ¥¬ ᨬ¢®«ë >'9' ¨ <'A'
|
jl @f ;®âᥨ¢ ¥¬ ᨬ¢®«ë >'9' ¨ <'A'
|
||||||
.us1: ;á®áâ ¢®¥ ãá«®¢¨¥
|
.us1: ;á®áâ ¢®¥ ãá«®¢¨¥
|
||||||
cmp bl,'F'
|
cmp bl,'F'
|
||||||
jle .us2
|
jle .us2
|
||||||
cmp bl,'a'
|
cmp bl,'a'
|
||||||
jl @f ;®âᥨ¢ ¥¬ ᨬ¢®«ë >'F' ¨ <'a'
|
jl @f ;®âᥨ¢ ¥¬ ᨬ¢®«ë >'F' ¨ <'a'
|
||||||
sub bl,32 ;¯¥à¥¢®¤¨¬ ᨬ¢®«ë ¢ ¢¥à娩 ॣ¨áâà, ¤«ï ã¯à®é¥¨ï ¨å ¯®á«¥¤ã饩 ®¡à ¡®âª¨
|
sub bl,32 ;¯¥à¥¢®¤¨¬ ᨬ¢®«ë ¢ ¢¥à娩 ॣ¨áâà, ¤«ï ã¯à®é¥¨ï ¨å ¯®á«¥¤ã饩 ®¡à ¡®âª¨
|
||||||
.us2: ;á®áâ ¢®¥ ãá«®¢¨¥
|
.us2: ;á®áâ ¢®¥ ãá«®¢¨¥
|
||||||
sub bl,'0'
|
sub bl,'0'
|
||||||
cmp bl,9
|
cmp bl,9
|
||||||
jle .cor1
|
jle .cor1
|
||||||
sub bl,7 ;convert 'A' to '10'
|
sub bl,7 ;convert 'A' to '10'
|
||||||
.cor1:
|
.cor1:
|
||||||
shl eax,4
|
shl eax,4
|
||||||
add eax,ebx
|
add eax,ebx
|
||||||
inc esi
|
inc esi
|
||||||
jmp .cycle_16
|
jmp .cycle_16
|
||||||
@@:
|
@@:
|
||||||
cmp ecx,0 ;¥á«¨ ç¨á«® ®âà¨æ ⥫쮥
|
cmp ecx,0 ;¥á«¨ ç¨á«® ®âà¨æ ⥫쮥
|
||||||
jne @f
|
jne @f
|
||||||
sub ecx,eax
|
sub ecx,eax
|
||||||
mov eax,ecx
|
mov eax,ecx
|
||||||
@@:
|
@@:
|
||||||
ret
|
ret
|
||||||
endp
|
endp
|
||||||
|
|
||||||
;-------------------------------------------------
|
;-------------------------------------------------
|
||||||
title db 'string to double 03.01.21',0
|
title db 'string to double 03.01.21',0
|
||||||
hexstr db 'hex:',0
|
hexstr db 'hex:',0
|
||||||
decstr db 'dec:',0
|
decstr db 'dec:',0
|
||||||
binstr db 'bin:',0
|
binstr db 'bin:',0
|
||||||
|
|
||||||
if lang eq ru_RU
|
if lang eq ru_RU
|
||||||
numstr db '—¨á«®:',0
|
numstr db '—¨á«®:',0
|
||||||
Okstr db '‚¢®¤',0
|
Okstr db '‚¢®¤',0
|
||||||
else
|
else ; Default to en_US
|
||||||
numstr db 'Number:',0
|
numstr db 'Number:',0
|
||||||
Okstr db 'Ok',0
|
Okstr db 'Ok',0
|
||||||
end if
|
end if
|
||||||
|
|
||||||
mouse_dd dd 0
|
mouse_dd dd 0
|
||||||
edit1 edit_box 182, 59, 146, 0xffffff, 0xff, 0x80ff, 0, 0x8000, (string1_end-string1), string1, mouse_dd, 0
|
edit1 edit_box 182, 59, 146, 0xffffff, 0xff, 0x80ff, 0, 0x8000, (string1_end-string1), string1, mouse_dd, 0
|
||||||
editboxes_end:
|
editboxes_end:
|
||||||
|
|
||||||
;option_boxes
|
;option_boxes
|
||||||
opt1 option_box option_group1, 15, 90, 8, 12, 0xffffff, 0x80ff, 0, op_text.1, 17
|
opt1 option_box option_group1, 15, 90, 8, 12, 0xffffff, 0x80ff, 0, op_text.1, 17
|
||||||
opt2 option_box option_group1, 15, 106, 8, 12, 0xffffff, 0x80ff, 0, op_text.2, 18
|
opt2 option_box option_group1, 15, 106, 8, 12, 0xffffff, 0x80ff, 0, op_text.2, 18
|
||||||
opt3 option_box option_group1, 15, 122, 8, 12, 0xffffff, 0x80ff, 0, op_text.3, 21
|
opt3 option_box option_group1, 15, 122, 8, 12, 0xffffff, 0x80ff, 0, op_text.3, 21
|
||||||
|
|
||||||
op_text: ;⥪áâ ¤«ï à ¤¨® ª®¯®ª
|
op_text: ;⥪áâ ¤«ï à ¤¨® ª®¯®ª
|
||||||
.1 db 'str(dec) -> float'
|
.1 db 'str(dec) -> float'
|
||||||
.2 db 'str(dec) -> double'
|
.2 db 'str(dec) -> double'
|
||||||
.3 db 'float(dec,hex) -> str'
|
.3 db 'float(dec,hex) -> str'
|
||||||
;㪠§ ⥫¨ ¤«ï option_box
|
;㪠§ ⥫¨ ¤«ï option_box
|
||||||
option_group1 dd opt1
|
option_group1 dd opt1
|
||||||
Option_boxes1 dd opt1, opt2, opt3, 0
|
Option_boxes1 dd opt1, opt2, opt3, 0
|
||||||
|
|
||||||
system_dir_0 db '/sys/lib/'
|
system_dir_0 db '/sys/lib/'
|
||||||
lib_name_0 db 'box_lib.obj',0
|
lib_name_0 db 'box_lib.obj',0
|
||||||
|
|
||||||
|
|
||||||
l_libs_start:
|
l_libs_start:
|
||||||
lib_0 l_libs lib_name_0, library_path, system_dir_0,import_box_lib
|
lib_0 l_libs lib_name_0, library_path, system_dir_0,import_box_lib
|
||||||
l_libs_end:
|
l_libs_end:
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
import_box_lib:
|
import_box_lib:
|
||||||
;dd sz_init1
|
;dd sz_init1
|
||||||
edit_box_draw dd sz_edit_box_draw
|
edit_box_draw dd sz_edit_box_draw
|
||||||
edit_box_key dd sz_edit_box_key
|
edit_box_key dd sz_edit_box_key
|
||||||
edit_box_mouse dd sz_edit_box_mouse
|
edit_box_mouse dd sz_edit_box_mouse
|
||||||
;edit_box_set_text dd sz_edit_box_set_text
|
;edit_box_set_text dd sz_edit_box_set_text
|
||||||
option_box_draw dd aOption_box_draw
|
option_box_draw dd aOption_box_draw
|
||||||
option_box_mouse dd aOption_box_mouse
|
option_box_mouse dd aOption_box_mouse
|
||||||
;version_op dd aVersion_op
|
;version_op dd aVersion_op
|
||||||
dd 0,0
|
dd 0,0
|
||||||
;sz_init1 db 'lib_init',0
|
;sz_init1 db 'lib_init',0
|
||||||
sz_edit_box_draw db 'edit_box_draw',0
|
sz_edit_box_draw db 'edit_box_draw',0
|
||||||
sz_edit_box_key db 'edit_box_key',0
|
sz_edit_box_key db 'edit_box_key',0
|
||||||
sz_edit_box_mouse db 'edit_box_mouse',0
|
sz_edit_box_mouse db 'edit_box_mouse',0
|
||||||
;sz_edit_box_set_text db 'edit_box_set_text',0
|
;sz_edit_box_set_text db 'edit_box_set_text',0
|
||||||
aOption_box_draw db 'option_box_draw',0
|
aOption_box_draw db 'option_box_draw',0
|
||||||
aOption_box_mouse db 'option_box_mouse',0
|
aOption_box_mouse db 'option_box_mouse',0
|
||||||
;aVersion_op db 'version_op',0
|
;aVersion_op db 'version_op',0
|
||||||
|
|
||||||
i_end:
|
i_end:
|
||||||
sys_colors system_colors
|
sys_colors system_colors
|
||||||
align 16
|
align 16
|
||||||
sys_path rb 4096
|
sys_path rb 4096
|
||||||
library_path rb 4096
|
library_path rb 4096
|
||||||
rb 0x400 ;stack
|
rb 0x400 ;stack
|
||||||
e_end: ; ¬¥âª ª®æ ¯à®£à ¬¬ë
|
e_end: ; ¬¥âª ª®æ ¯à®£à ¬¬ë
|
||||||
|
@ -1,491 +1,501 @@
|
|||||||
|
|
||||||
sz htext,'TINYPAD ',APP_VERSION
|
sz htext,'TINYPAD ',APP_VERSION
|
||||||
|
|
||||||
menubar_res main_menu,\
|
; Language support for locales: ru_RU (CP866), en_US, it_IT, et_EE, es_ES.
|
||||||
ru,'” ©«' ,mm.File ,onshow.file ,\
|
|
||||||
ru,'<27>à ¢ª ' ,mm.Edit ,onshow.edit ,\
|
menubar_res main_menu,\
|
||||||
ru,'<27>®¨áª' ,mm.Search ,onshow.search ,\
|
ru_RU,'” ©«' ,mm.File ,onshow.file ,\
|
||||||
ru,'‡ ¯ãáª' ,mm.Run ,onshow.run ,\
|
ru_RU,'<27>à ¢ª ' ,mm.Edit ,onshow.edit ,\
|
||||||
ru,'Š®¤¨à®¢ª ',mm.Encoding,onshow.recode ,\
|
ru_RU,'<27>®¨áª' ,mm.Search ,onshow.search ,\
|
||||||
ru,'Ž¯æ¨¨' ,mm.Options ,onshow.options,\
|
ru_RU,'‡ ¯ãáª' ,mm.Run ,onshow.run ,\
|
||||||
\
|
ru_RU,'Š®¤¨à®¢ª ',mm.Encoding,onshow.recode ,\
|
||||||
en,'File' ,mm.File ,onshow.file ,\
|
ru_RU,'Ž¯æ¨¨' ,mm.Options ,onshow.options,\
|
||||||
en,'Edit' ,mm.Edit ,onshow.edit ,\
|
\
|
||||||
en,'Search' ,mm.Search ,onshow.search ,\
|
en_US,'File' ,mm.File ,onshow.file ,\
|
||||||
en,'Run' ,mm.Run ,onshow.run ,\
|
en_US,'Edit' ,mm.Edit ,onshow.edit ,\
|
||||||
en,'Encoding' ,mm.Encoding,onshow.recode ,\
|
en_US,'Search' ,mm.Search ,onshow.search ,\
|
||||||
en,'Options' ,mm.Options ,onshow.options,\
|
en_US,'Run' ,mm.Run ,onshow.run ,\
|
||||||
\
|
en_US,'Encoding' ,mm.Encoding,onshow.recode ,\
|
||||||
it,'File' ,mm.File ,onshow.file ,\
|
en_US,'Options' ,mm.Options ,onshow.options,\
|
||||||
it,'Modificare' ,mm.Edit ,onshow.edit ,\
|
\
|
||||||
it,'Ricerca' ,mm.Search ,onshow.search ,\
|
it_IT,'File' ,mm.File ,onshow.file ,\
|
||||||
it,'Correre' ,mm.Run ,onshow.run ,\
|
it_IT,'Modificare' ,mm.Edit ,onshow.edit ,\
|
||||||
it,'Codifica' ,mm.Encoding,onshow.recode ,\
|
it_IT,'Ricerca' ,mm.Search ,onshow.search ,\
|
||||||
it,'Opzioni' ,mm.Options ,onshow.options,\
|
it_IT,'Correre' ,mm.Run ,onshow.run ,\
|
||||||
\
|
it_IT,'Codifica' ,mm.Encoding,onshow.recode ,\
|
||||||
et,'Fail' ,mm.File ,onshow.file ,\
|
it_IT,'Opzioni' ,mm.Options ,onshow.options,\
|
||||||
et,'Muuda' ,mm.Edit ,onshow.edit ,\
|
\
|
||||||
et,'Otsi' ,mm.Search ,onshow.search ,\
|
et_EE,'Fail' ,mm.File ,onshow.file ,\
|
||||||
et,'Käivita' ,mm.Run ,onshow.run ,\
|
et_EE,'Muuda' ,mm.Edit ,onshow.edit ,\
|
||||||
et,'Kodeering',mm.Encoding,onshow.recode ,\
|
et_EE,'Otsi' ,mm.Search ,onshow.search ,\
|
||||||
et,'Seaded' ,mm.Options ,onshow.options,\
|
et_EE,'Käivita' ,mm.Run ,onshow.run ,\
|
||||||
\
|
et_EE,'Kodeering',mm.Encoding,onshow.recode ,\
|
||||||
sp,'Archivo' ,mm.File ,onshow.file ,\
|
et_EE,'Seaded' ,mm.Options ,onshow.options,\
|
||||||
sp,'Editar' ,mm.Edit ,onshow.edit ,\
|
\
|
||||||
sp,'Buscar' ,mm.Search ,onshow.search ,\
|
es_ES,'Archivo' ,mm.File ,onshow.file ,\
|
||||||
sp,'Ejecutar' ,mm.Run ,onshow.run ,\
|
es_ES,'Editar' ,mm.Edit ,onshow.edit ,\
|
||||||
sp,'Codificación',mm.Encoding,onshow.recode,\
|
es_ES,'Buscar' ,mm.Search ,onshow.search ,\
|
||||||
sp,'Opciones' ,mm.Options ,onshow.options
|
es_ES,'Ejecutar' ,mm.Run ,onshow.run ,\
|
||||||
|
es_ES,'Codificación',mm.Encoding,onshow.recode,\
|
||||||
popup_res mm.File,\
|
es_ES,'Opciones' ,mm.Options ,onshow.options
|
||||||
ru,'<27>®¢ë©' ,'Ctrl+N' ,New ,\
|
|
||||||
ru,'Žâªàëâì...','Ctrl+O' ,Open ,\
|
popup_res mm.File,\
|
||||||
ru,'‘®åà ¨âì' ,'Ctrl+S' ,Save ,\
|
ru_RU,'<27>®¢ë©' ,'Ctrl+N' ,New ,\
|
||||||
ru,'‘®åà ¨âì ª ª...','Ctrl+Shift+S',SaveAs,\
|
ru_RU,'Žâªàëâì...','Ctrl+O' ,Open ,\
|
||||||
ru,'-','',,\
|
ru_RU,'‘®åà ¨âì' ,'Ctrl+S' ,Save ,\
|
||||||
ru,'‡ ªàëâì' ,'Ctrl+F4' ,Close ,\
|
ru_RU,'‘®åà ¨âì ª ª...','Ctrl+Shift+S',SaveAs,\
|
||||||
ru,'-','',,\
|
ru_RU,'-','',,\
|
||||||
ru,'‚ë室' ,'Alt+X' ,Exit ,\
|
ru_RU,'‡ ªàëâì' ,'Ctrl+F4' ,Close ,\
|
||||||
\
|
ru_RU,'-','',,\
|
||||||
en,'New' ,'Ctrl+N' ,New ,\
|
ru_RU,'‚ë室' ,'Alt+X' ,Exit ,\
|
||||||
en,'Open...' ,'Ctrl+O' ,Open ,\
|
\
|
||||||
en,'Save' ,'Ctrl+S' ,Save ,\
|
en_US,'New' ,'Ctrl+N' ,New ,\
|
||||||
en,'Save as...','Ctrl+Shift+S',SaveAs ,\
|
en_US,'Open...' ,'Ctrl+O' ,Open ,\
|
||||||
en,'-','',,\
|
en_US,'Save' ,'Ctrl+S' ,Save ,\
|
||||||
en,'Close' ,'Ctrl+F4' ,Close ,\
|
en_US,'Save as...','Ctrl+Shift+S',SaveAs ,\
|
||||||
en,'-','',,\
|
en_US,'-','',,\
|
||||||
en,'Exit' ,'Alt+X' ,Exit ,\
|
en_US,'Close' ,'Ctrl+F4' ,Close ,\
|
||||||
\
|
en_US,'-','',,\
|
||||||
it,'Nuovo' ,'Ctrl+N' ,New ,\
|
en_US,'Exit' ,'Alt+X' ,Exit ,\
|
||||||
it,'Aperto...' ,'Ctrl+O' ,Open ,\
|
\
|
||||||
it,'Salva' ,'Ctrl+S' ,Save ,\
|
it_IT,'Nuovo' ,'Ctrl+N' ,New ,\
|
||||||
it,'Salva come...','Ctrl+Shift+S',SaveAs ,\
|
it_IT,'Aperto...' ,'Ctrl+O' ,Open ,\
|
||||||
it,'-','',,\
|
it_IT,'Salva' ,'Ctrl+S' ,Save ,\
|
||||||
it,'Chiudi' ,'Ctrl+F4' ,Close ,\
|
it_IT,'Salva come...','Ctrl+Shift+S',SaveAs ,\
|
||||||
it,'-','',,\
|
it_IT,'-','',,\
|
||||||
it,'Uscita' ,'Alt+X' ,Exit ,\
|
it_IT,'Chiudi' ,'Ctrl+F4' ,Close ,\
|
||||||
\
|
it_IT,'-','',,\
|
||||||
et,'Uus' ,'Ctrl+N' ,New ,\
|
it_IT,'Uscita' ,'Alt+X' ,Exit ,\
|
||||||
et,'Ava...' ,'Ctrl+O' ,Open ,\
|
\
|
||||||
et,'Salvesta' ,'Ctrl+S' ,Save ,\
|
et_EE,'Uus' ,'Ctrl+N' ,New ,\
|
||||||
et,'Salvesta nimega...','Ctrl+Shift+S',SaveAs,\
|
et_EE,'Ava...' ,'Ctrl+O' ,Open ,\
|
||||||
et,'-','',,\
|
et_EE,'Salvesta' ,'Ctrl+S' ,Save ,\
|
||||||
et,'Sulge' ,'Ctrl+F4' ,Close ,\
|
et_EE,'Salvesta nimega...','Ctrl+Shift+S',SaveAs,\
|
||||||
et,'-','',,\
|
et_EE,'-','',,\
|
||||||
et,'Välju' ,'Alt+X' ,Exit ,\
|
et_EE,'Sulge' ,'Ctrl+F4' ,Close ,\
|
||||||
\
|
et_EE,'-','',,\
|
||||||
sp,'Nuevo' ,'Ctrl+N' ,New ,\
|
et_EE,'Välju' ,'Alt+X' ,Exit ,\
|
||||||
sp,'Abrir...' ,'Ctrl+O' ,Open ,\
|
\
|
||||||
sp,'Guardar' ,'Ctrl+S' ,Save ,\
|
es_ES,'Nuevo' ,'Ctrl+N' ,New ,\
|
||||||
sp,'Guardar como...','Ctrl+Shift+S',SaveAs,\
|
es_ES,'Abrir...' ,'Ctrl+O' ,Open ,\
|
||||||
sp,'-','',,\
|
es_ES,'Guardar' ,'Ctrl+S' ,Save ,\
|
||||||
sp,'Cerrar' ,'Ctrl+F4',Close,\
|
es_ES,'Guardar como...','Ctrl+Shift+S',SaveAs,\
|
||||||
sp,'-','',,\
|
es_ES,'-','',,\
|
||||||
sp,'Salir' ,'Alt+X' ,Exit
|
es_ES,'Cerrar' ,'Ctrl+F4',Close,\
|
||||||
|
es_ES,'-','',,\
|
||||||
popup_res mm.Edit,\
|
es_ES,'Salir' ,'Alt+X' ,Exit
|
||||||
ru,'‚ë१ âì' ,'Ctrl+X',Cut ,\
|
|
||||||
ru,'Š®¯¨à®¢ âì' ,'Ctrl+C',Copy ,\
|
popup_res mm.Edit,\
|
||||||
ru,'‚áâ ¢¨âì' ,'Ctrl+V',Insert,\
|
ru_RU,'‚ë१ âì' ,'Ctrl+X',Cut ,\
|
||||||
ru,'“¤ «¨âì' ,'' ,Delete,\
|
ru_RU,'Š®¯¨à®¢ âì' ,'Ctrl+C',Copy ,\
|
||||||
ru,'-','',,\
|
ru_RU,'‚áâ ¢¨âì' ,'Ctrl+V',Insert,\
|
||||||
ru,'‚뤥«¨âì ¢áñ' ,'Ctrl+A',SelAll,\
|
ru_RU,'“¤ «¨âì' ,'' ,Delete,\
|
||||||
\
|
ru_RU,'-','',,\
|
||||||
en,'Cut' ,'Ctrl+X',Cut ,\
|
ru_RU,'‚뤥«¨âì ¢áñ' ,'Ctrl+A',SelAll,\
|
||||||
en,'Copy' ,'Ctrl+C',Copy ,\
|
\
|
||||||
en,'Paste' ,'Ctrl+V',Insert,\
|
en_US,'Cut' ,'Ctrl+X',Cut ,\
|
||||||
en,'Delete' ,'' ,Delete,\
|
en_US,'Copy' ,'Ctrl+C',Copy ,\
|
||||||
en,'-','',,\
|
en_US,'Paste' ,'Ctrl+V',Insert,\
|
||||||
en,'Select all','Ctrl+A',SelAll,\
|
en_US,'Delete' ,'' ,Delete,\
|
||||||
\
|
en_US,'-','',,\
|
||||||
it,'Taglio' ,'Ctrl+X',Cut ,\
|
en_US,'Select all','Ctrl+A',SelAll,\
|
||||||
it,'Copia' ,'Ctrl+C',Copy ,\
|
\
|
||||||
it,'Incolla' ,'Ctrl+V',Insert,\
|
it_IT,'Taglio' ,'Ctrl+X',Cut ,\
|
||||||
it,'Elimina' ,'' ,Delete,\
|
it_IT,'Copia' ,'Ctrl+C',Copy ,\
|
||||||
it,'-','',,\
|
it_IT,'Incolla' ,'Ctrl+V',Insert,\
|
||||||
it,'Seleziona tutto','Ctrl+A',SelAll,\
|
it_IT,'Elimina' ,'' ,Delete,\
|
||||||
\
|
it_IT,'-','',,\
|
||||||
et,'Lõika' ,'Ctrl+X',Cut ,\
|
it_IT,'Seleziona tutto','Ctrl+A',SelAll,\
|
||||||
et,'Kopeeri' ,'Ctrl+C',Copy ,\
|
\
|
||||||
et,'Kleebi' ,'Ctrl+V',Insert,\
|
et_EE,'Lõika' ,'Ctrl+X',Cut ,\
|
||||||
et,'Kustuta' ,'' ,Delete,\
|
et_EE,'Kopeeri' ,'Ctrl+C',Copy ,\
|
||||||
et,'-','',,\
|
et_EE,'Kleebi' ,'Ctrl+V',Insert,\
|
||||||
et,'Vali kõik','Ctrl+A',SelAll,\
|
et_EE,'Kustuta' ,'' ,Delete,\
|
||||||
\
|
et_EE,'-','',,\
|
||||||
sp,'Cortar' ,'Ctrl+X',Cut ,\
|
et_EE,'Vali kõik','Ctrl+A',SelAll,\
|
||||||
sp,'Copiar' ,'Ctrl+C',Copy ,\
|
\
|
||||||
sp,'Pegar' ,'Ctrl+V',Insert,\
|
es_ES,'Cortar' ,'Ctrl+X',Cut ,\
|
||||||
sp,'Eliminar' ,'' ,Delete,\
|
es_ES,'Copiar' ,'Ctrl+C',Copy ,\
|
||||||
sp,'-','',,\
|
es_ES,'Pegar' ,'Ctrl+V',Insert,\
|
||||||
sp,'Seleccionar todo','Ctrl+A',SelAll
|
es_ES,'Eliminar' ,'' ,Delete,\
|
||||||
|
es_ES,'-','',,\
|
||||||
popup_res mm.Search,\
|
es_ES,'Seleccionar todo','Ctrl+A',SelAll
|
||||||
ru,'<27>¥à¥©â¨...' ,'Ctrl+G',Position,\
|
|
||||||
ru,'-','',,\
|
popup_res mm.Search,\
|
||||||
ru,'<27> ©â¨...' ,'Ctrl+F',Find ,\
|
ru_RU,'<27>¥à¥©â¨...' ,'Ctrl+G',Position,\
|
||||||
ru,'<27> ©â¨ ¤ «¥¥','F3' ,FindNext,\
|
ru_RU,'-','',,\
|
||||||
ru,'‡ ¬¥¨âì...','Ctrl+H',Replace ,\
|
ru_RU,'<27> ©â¨...' ,'Ctrl+F',Find ,\
|
||||||
\
|
ru_RU,'<27> ©â¨ ¤ «¥¥','F3' ,FindNext,\
|
||||||
en,'Position...','Ctrl+G',Position,\
|
ru_RU,'‡ ¬¥¨âì...','Ctrl+H',Replace ,\
|
||||||
en,'-','',,\
|
\
|
||||||
en,'Find...' ,'Ctrl+F',Find ,\
|
en_US,'Position...','Ctrl+G',Position,\
|
||||||
en,'Find next' ,'F3' ,FindNext,\
|
en_US,'-','',,\
|
||||||
en,'Replace...' ,'Ctrl+H',Replace ,\
|
en_US,'Find...' ,'Ctrl+F',Find ,\
|
||||||
\
|
en_US,'Find next' ,'F3' ,FindNext,\
|
||||||
it,'Posizione...','Ctrl+G',Position,\
|
en_US,'Replace...' ,'Ctrl+H',Replace ,\
|
||||||
it,'-','',,\
|
\
|
||||||
it,'Trova...' ,'Ctrl+F',Find ,\
|
it_IT,'Posizione...','Ctrl+G',Position,\
|
||||||
it,'Trova il prossimo' ,'F3' ,FindNext,\
|
it_IT,'-','',,\
|
||||||
it,'Sostituire...' ,'Ctrl+H',Replace ,\
|
it_IT,'Trova...' ,'Ctrl+F',Find ,\
|
||||||
\
|
it_IT,'Trova il prossimo' ,'F3' ,FindNext,\
|
||||||
et,'Positsioon...','Ctrl+G',Position,\
|
it_IT,'Sostituire...' ,'Ctrl+H',Replace ,\
|
||||||
et,'-','',,\
|
\
|
||||||
et,'Leia...' ,'Ctrl+F',Find ,\
|
et_EE,'Positsioon...','Ctrl+G',Position,\
|
||||||
et,'Leia järgmine','F3' ,FindNext,\
|
et_EE,'-','',,\
|
||||||
et,'Asenda...' ,'Ctrl+H',Replace ,\
|
et_EE,'Leia...' ,'Ctrl+F',Find ,\
|
||||||
\
|
et_EE,'Leia järgmine','F3' ,FindNext,\
|
||||||
sp,'Posición...' ,'Ctrl+G',Position,\
|
et_EE,'Asenda...' ,'Ctrl+H',Replace ,\
|
||||||
sp,'-','',,\
|
\
|
||||||
sp,'Buscar...' ,'Ctrl+F',Find ,\
|
es_ES,'Posición...' ,'Ctrl+G',Position,\
|
||||||
sp,'Buscar siguiente','F3' ,FindNext,\
|
es_ES,'-','',,\
|
||||||
sp,'Reemplazar...','Ctrl+H',Replace
|
es_ES,'Buscar...' ,'Ctrl+F',Find ,\
|
||||||
|
es_ES,'Buscar siguiente','F3' ,FindNext,\
|
||||||
popup_res mm.Run,\
|
es_ES,'Reemplazar...','Ctrl+H',Replace
|
||||||
ru,'‡ ¯ãáâ¨âì' ,'F9' ,Run ,\
|
|
||||||
ru,'‡ ¯ãáâ¨âì ¢ ¤¥¡ ££¥à¥','F10',Debug ,\
|
popup_res mm.Run,\
|
||||||
ru,'Š®¬¯¨«¨à®¢ âì' ,'Ctrl+F9',Compile ,\
|
ru_RU,'‡ ¯ãáâ¨âì' ,'F9' ,Run ,\
|
||||||
ru,'-','',,\
|
ru_RU,'‡ ¯ãáâ¨âì ¢ ¤¥¡ ££¥à¥','F10',Debug ,\
|
||||||
ru,'„®áª ®â« ¤ª¨' ,'' ,DbgBoard,\
|
ru_RU,'Š®¬¯¨«¨à®¢ âì' ,'Ctrl+F9',Compile ,\
|
||||||
ru,'‘¨áâ¥¬ë¥ äãªæ¨¨','' ,SysFuncs,\
|
ru_RU,'-','',,\
|
||||||
\
|
ru_RU,'„®áª ®â« ¤ª¨' ,'' ,DbgBoard,\
|
||||||
en,'Run' ,'F9' ,Run ,\
|
ru_RU,'‘¨áâ¥¬ë¥ äãªæ¨¨','' ,SysFuncs,\
|
||||||
en,'Run in debugger' ,'F10' ,Debug ,\
|
\
|
||||||
en,'Compile' ,'Ctrl+F9',Compile ,\
|
en_US,'Run' ,'F9' ,Run ,\
|
||||||
en,'-','',,\
|
en_US,'Run in debugger' ,'F10' ,Debug ,\
|
||||||
en,'Debug board' ,'' ,DbgBoard,\
|
en_US,'Compile' ,'Ctrl+F9',Compile ,\
|
||||||
en,'System functions' ,'' ,SysFuncs,\
|
en_US,'-','',,\
|
||||||
\
|
en_US,'Debug board' ,'' ,DbgBoard,\
|
||||||
it,'Correre' ,'F9' ,Run ,\
|
en_US,'System functions' ,'' ,SysFuncs,\
|
||||||
it,'Esegui nel debugger','F10',Debug ,\
|
\
|
||||||
it,'Compilare','Ctrl+F9',Compile ,\
|
it_IT,'Correre' ,'F9' ,Run ,\
|
||||||
it,'-','',,\
|
it_IT,'Esegui nel debugger','F10',Debug ,\
|
||||||
it,'Scheda di debug' ,'' ,DbgBoard,\
|
it_IT,'Compilare','Ctrl+F9',Compile ,\
|
||||||
it,'Funzioni di sistema','' ,SysFuncs,\
|
it_IT,'-','',,\
|
||||||
\
|
it_IT,'Scheda di debug' ,'' ,DbgBoard,\
|
||||||
et,'Käivita' ,'F9' ,Run ,\
|
it_IT,'Funzioni di sistema','' ,SysFuncs,\
|
||||||
et,'Käivita aastal siluri','F10',Debug ,\
|
\
|
||||||
et,'Kompileeri' ,'Ctrl+F9',Compile ,\
|
et_EE,'Käivita' ,'F9' ,Run ,\
|
||||||
et,'-','',,\
|
et_EE,'Käivita aastal siluri','F10',Debug ,\
|
||||||
et,'Silumis paneel' ,'' ,DbgBoard,\
|
et_EE,'Kompileeri' ,'Ctrl+F9',Compile ,\
|
||||||
et,'Süsteemi funktsioonid','' ,SysFuncs,\
|
et_EE,'-','',,\
|
||||||
\
|
et_EE,'Silumis paneel' ,'' ,DbgBoard,\
|
||||||
sp,'Ejecutar' ,'F9' ,Run ,\
|
et_EE,'Süsteemi funktsioonid','' ,SysFuncs,\
|
||||||
sp,'Ejecutar en el depurador','F10',Debug,\
|
\
|
||||||
sp,'Compilar' ,'Ctrl+F9',Compile ,\
|
es_ES,'Ejecutar' ,'F9' ,Run ,\
|
||||||
sp,'-','',,\
|
es_ES,'Ejecutar en el depurador','F10',Debug,\
|
||||||
sp,'Depuración' ,'' ,DbgBoard,\
|
es_ES,'Compilar' ,'Ctrl+F9',Compile ,\
|
||||||
sp,'Funciones del sistema' ,'',SysFuncs
|
es_ES,'-','',,\
|
||||||
|
es_ES,'Depuración' ,'' ,DbgBoard,\
|
||||||
popup_res mm.Encoding,\
|
es_ES,'Funciones del sistema' ,'',SysFuncs
|
||||||
@!,<'CP866 ',0x1A,' CP1251'>,'',CP866.CP1251,\
|
|
||||||
@!,<'CP1251 ',0x1A,' CP866' >,'',CP1251.CP866,\
|
popup_res mm.Encoding,\
|
||||||
@!,<'-'>,'',,\
|
@!,<'CP866 ',0x1A,' CP1251'>,'',CP866.CP1251,\
|
||||||
@!,<'CP866 ',0x1A,' KOI8-R'>,'',CP866.KOI8R ,\
|
@!,<'CP1251 ',0x1A,' CP866' >,'',CP1251.CP866,\
|
||||||
@!,<'KOI8-R ',0x1A,' CP866' >,'',KOI8R.CP866 ,\
|
@!,<'-'>,'',,\
|
||||||
@!,<'-'>,'',,\
|
@!,<'CP866 ',0x1A,' KOI8-R'>,'',CP866.KOI8R ,\
|
||||||
@!,<'CP1251 ',0x1A,' KOI8-R'>,'',CP1251.KOI8R,\
|
@!,<'KOI8-R ',0x1A,' CP866' >,'',KOI8R.CP866 ,\
|
||||||
@!,<'KOI8-R ',0x1A,' CP1251'>,'',KOI8R.CP1251
|
@!,<'-'>,'',,\
|
||||||
|
@!,<'CP1251 ',0x1A,' KOI8-R'>,'',CP1251.KOI8R,\
|
||||||
popup_res mm.Options,\
|
@!,<'KOI8-R ',0x1A,' CP1251'>,'',KOI8R.CP1251
|
||||||
ru,'“¢¥«¨ç¨âì' ,'Ctrl +',ZoomIn ,\
|
|
||||||
ru,'“¬¥ìè¨âì' ,'Ctrl -',ZoomOut ,\
|
popup_res mm.Options,\
|
||||||
ru,'-','',,\
|
ru_RU,'“¢¥«¨ç¨âì' ,'Ctrl +',ZoomIn ,\
|
||||||
ru,'<27>®¬¥à áâப' ,'',LineNumbers ,\
|
ru_RU,'“¬¥ìè¨âì' ,'Ctrl -',ZoomOut ,\
|
||||||
ru,'<27>¥§®¯ ᮥ ¢ë¤¥«¥¨¥' ,'',SecureSel ,\
|
ru_RU,'-','',,\
|
||||||
ru,'€¢â®¬ â¨ç¥áª¨¥ ᪮¡ª¨' ,'',AutoBrackets,\
|
ru_RU,'<27>®¬¥à áâப' ,'',LineNumbers ,\
|
||||||
ru,'€¢â®¬ â¨ç¥áª¨© ®âáâã¯' ,'',AutoIndents ,\
|
ru_RU,'<27>¥§®¯ ᮥ ¢ë¤¥«¥¨¥' ,'',SecureSel ,\
|
||||||
ru,'Ž¯â¨¬ «ì®¥ á®åà ¥¨¥' ,'',OptimalFill ,\
|
ru_RU,'€¢â®¬ â¨ç¥áª¨¥ ᪮¡ª¨' ,'',AutoBrackets,\
|
||||||
ru,'-','',,\
|
ru_RU,'€¢â®¬ â¨ç¥áª¨© ®âáâã¯' ,'',AutoIndents ,\
|
||||||
ru,'‚¥è¨© ¢¨¤...' ,'',Appearance ,\
|
ru_RU,'Ž¯â¨¬ «ì®¥ á®åà ¥¨¥' ,'',OptimalFill ,\
|
||||||
\
|
ru_RU,'-','',,\
|
||||||
en,'Zoom in' ,'Ctrl +',ZoomIn ,\
|
ru_RU,'‚¥è¨© ¢¨¤...' ,'',Appearance ,\
|
||||||
en,'Zoom out' ,'Ctrl -',ZoomOut ,\
|
\
|
||||||
en,'-','',,\
|
en_US,'Zoom in' ,'Ctrl +',ZoomIn ,\
|
||||||
en,'Line numbers' ,'',LineNumbers ,\
|
en_US,'Zoom out' ,'Ctrl -',ZoomOut ,\
|
||||||
en,'Secure selection' ,'',SecureSel ,\
|
en_US,'-','',,\
|
||||||
en,'Automatic brackets' ,'',AutoBrackets,\
|
en_US,'Line numbers' ,'',LineNumbers ,\
|
||||||
en,'Automatic indents' ,'',AutoIndents ,\
|
en_US,'Secure selection' ,'',SecureSel ,\
|
||||||
en,'Optimal fill on saving' ,'',OptimalFill ,\
|
en_US,'Automatic brackets' ,'',AutoBrackets,\
|
||||||
en,'-','',,\
|
en_US,'Automatic indents' ,'',AutoIndents ,\
|
||||||
en,'Appearance...' ,'',Appearance ,\
|
en_US,'Optimal fill on saving' ,'',OptimalFill ,\
|
||||||
\
|
en_US,'-','',,\
|
||||||
it,'Ingrandire' ,'Ctrl +',ZoomIn ,\
|
en_US,'Appearance...' ,'',Appearance ,\
|
||||||
it,'Rimpicciolisci' ,'Ctrl -',ZoomOut ,\
|
\
|
||||||
it,'-','',,\
|
it_IT,'Ingrandire' ,'Ctrl +',ZoomIn ,\
|
||||||
it,'Numeri di riga' ,'',LineNumbers ,\
|
it_IT,'Rimpicciolisci' ,'Ctrl -',ZoomOut ,\
|
||||||
it,'Selezione sicura' ,'',SecureSel ,\
|
it_IT,'-','',,\
|
||||||
it,'Staffe automatiche' ,'',AutoBrackets,\
|
it_IT,'Numeri di riga' ,'',LineNumbers ,\
|
||||||
it,'Rientri automatici' ,'',AutoIndents ,\
|
it_IT,'Selezione sicura' ,'',SecureSel ,\
|
||||||
it,'Combina spazi' ,'',OptimalFill ,\
|
it_IT,'Staffe automatiche' ,'',AutoBrackets,\
|
||||||
it,'-','',,\
|
it_IT,'Rientri automatici' ,'',AutoIndents ,\
|
||||||
it,'Aspetto...' ,'',Appearance ,\
|
it_IT,'Combina spazi' ,'',OptimalFill ,\
|
||||||
\
|
it_IT,'-','',,\
|
||||||
et,'Zoom in' ,'Ctrl +',ZoomIn ,\
|
it_IT,'Aspetto...' ,'',Appearance ,\
|
||||||
et,'Zoom out' ,'Ctrl -',ZoomOut ,\
|
\
|
||||||
et,'-','',,\
|
et_EE,'Zoom in' ,'Ctrl +',ZoomIn ,\
|
||||||
et,'Rea numbrid' ,'',LineNumbers ,\
|
et_EE,'Zoom out' ,'Ctrl -',ZoomOut ,\
|
||||||
et,'Turvaline valimine' ,'',SecureSel ,\
|
et_EE,'-','',,\
|
||||||
et,'Automaatsed sulud' ,'',AutoBrackets,\
|
et_EE,'Rea numbrid' ,'',LineNumbers ,\
|
||||||
et,'Automaatsed taandread' ,'',AutoIndents ,\
|
et_EE,'Turvaline valimine' ,'',SecureSel ,\
|
||||||
et,'Optimaalne täitmine salvestamisel','',OptimalFill,\
|
et_EE,'Automaatsed sulud' ,'',AutoBrackets,\
|
||||||
et,'-','',,\
|
et_EE,'Automaatsed taandread' ,'',AutoIndents ,\
|
||||||
et,'Välimus...' ,'',Appearance ,\
|
et_EE,'Optimaalne täitmine salvestamisel','',OptimalFill,\
|
||||||
\
|
et_EE,'-','',,\
|
||||||
sp,'Zoom in' ,'Ctrl +',ZoomIn ,\
|
et_EE,'Välimus...' ,'',Appearance ,\
|
||||||
sp,'Zoom out' ,'Ctrl -',ZoomOut ,\
|
\
|
||||||
sp,'-','',,\
|
es_ES,'Zoom in' ,'Ctrl +',ZoomIn ,\
|
||||||
sp,'Números en líneas' ,'',LineNumbers ,\
|
es_ES,'Zoom out' ,'Ctrl -',ZoomOut ,\
|
||||||
sp,'Selección segura' ,'',SecureSel ,\
|
es_ES,'-','',,\
|
||||||
sp,'Paréntesis automáticos' ,'',AutoBrackets,\
|
es_ES,'Números en líneas' ,'',LineNumbers ,\
|
||||||
sp,'Identación automática' ,'',AutoIndents ,\
|
es_ES,'Selección segura' ,'',SecureSel ,\
|
||||||
sp,'Llenado óptimo al guardar','',OptimalFill ,\
|
es_ES,'Paréntesis automáticos' ,'',AutoBrackets,\
|
||||||
sp,'-','',,\
|
es_ES,'Identación automática' ,'',AutoIndents ,\
|
||||||
sp,'Apariencia...' ,'',Appearance
|
es_ES,'Llenado óptimo al guardar','',OptimalFill ,\
|
||||||
|
es_ES,'-','',,\
|
||||||
lsz s_defname,\
|
es_ES,'Apariencia...' ,'',Appearance
|
||||||
ru,<'<27>¥§ë¬ïë©',0>,\
|
|
||||||
en,<'Untitled',0>,\
|
lsz s_defname,\
|
||||||
it,<'Senza titolo',0>,\
|
ru_RU,<'<27>¥§ë¬ïë©',0>,\
|
||||||
et,<'Nimetu',0>,\
|
en_US,<'Untitled',0>,\
|
||||||
sp,<'Sin título',0>
|
it_IT,<'Senza titolo',0>,\
|
||||||
|
et_EE,<'Nimetu',0>,\
|
||||||
lsz s_modified,\
|
es_ES,<'Sin título',0>
|
||||||
ru,'ˆ§¬¥¥®',\
|
|
||||||
en,'Modified',\
|
lsz s_modified,\
|
||||||
it,'Modificato',\
|
ru_RU,'ˆ§¬¥¥®',\
|
||||||
et,'Muudetud',\
|
en_US,'Modified',\
|
||||||
sp,'Modificado'
|
it_IT,'Modificato',\
|
||||||
|
et_EE,'Muudetud',\
|
||||||
lsz s_2filename,\
|
es_ES,'Modificado'
|
||||||
ru,'ˆ¬ï ä ©« :',\
|
|
||||||
en,'Filename:',\
|
lsz s_2filename,\
|
||||||
en,'Nome del file:',\
|
ru_RU,'ˆ¬ï ä ©« :',\
|
||||||
et,'Faili nimi:',\
|
en_US,'Filename:',\
|
||||||
sp,'Nombre de archivo:'
|
en_US,'Nome del file:',\
|
||||||
lsz s_2open,\
|
et_EE,'Faili nimi:',\
|
||||||
ru,'Žâªàëâì',\
|
es_ES,'Nombre de archivo:'
|
||||||
en,'Open',\
|
|
||||||
it,'Aperto',\
|
lsz s_2open,\
|
||||||
et,'Ava',\
|
ru_RU,'Žâªàëâì',\
|
||||||
sp,'Abrir'
|
en_US,'Open',\
|
||||||
lsz s_2save,\
|
it_IT,'Aperto',\
|
||||||
ru,'‘®åà ¨âì',\
|
et_EE,'Ava',\
|
||||||
en,'Save',\
|
es_ES,'Abrir'
|
||||||
it,'Salva',\
|
|
||||||
et,'Salvesta',\
|
lsz s_2save,\
|
||||||
sp,'Guardar'
|
ru_RU,'‘®åà ¨âì',\
|
||||||
lsz s_2save_no,\
|
en_US,'Save',\
|
||||||
ru,'<27>¥â',\
|
it_IT,'Salva',\
|
||||||
en,'No',\
|
et_EE,'Salvesta',\
|
||||||
it,'No',\
|
es_ES,'Guardar'
|
||||||
et,'Ei',\
|
|
||||||
sp,'No'
|
lsz s_2save_no,\
|
||||||
lsz s_2find,\
|
ru_RU,'<27>¥â',\
|
||||||
ru,'<27> ©â¨',\
|
en_US,'No',\
|
||||||
en,'Find',\
|
it_IT,'No',\
|
||||||
it,'Trova',\
|
et_EE,'Ei',\
|
||||||
et,'Leia',\
|
es_ES,'No'
|
||||||
sp,'Buscar'
|
|
||||||
db ':'
|
lsz s_2find,\
|
||||||
lsz s_2replace,\
|
ru_RU,'<27> ©â¨',\
|
||||||
ru,'‡ ¬¥¨âì',\
|
en_US,'Find',\
|
||||||
en,'Replace',\
|
it_IT,'Trova',\
|
||||||
it,'Sostituire',\
|
et_EE,'Leia',\
|
||||||
et,'Asenda',\
|
es_ES,'Buscar'
|
||||||
sp,'Reemplazar'
|
db ':'
|
||||||
db ':'
|
|
||||||
lsz s_2cancel,\
|
lsz s_2replace,\
|
||||||
ru,'Žâ¬¥ ',\
|
ru_RU,'‡ ¬¥¨âì',\
|
||||||
en,'Cancel',\
|
en_US,'Replace',\
|
||||||
it,'Annulla',\
|
it_IT,'Sostituire',\
|
||||||
et,'Tühista',\
|
et_EE,'Asenda',\
|
||||||
sp,'Cancelar'
|
es_ES,'Reemplazar'
|
||||||
lsz s_color,\
|
db ':'
|
||||||
ru,'–¢¥â: 0x',\
|
|
||||||
en,'Color: 0x',\
|
lsz s_2cancel,\
|
||||||
it,'Colore: 0x',\
|
ru_RU,'Žâ¬¥ ',\
|
||||||
et,'Värv: 0x',\
|
en_US,'Cancel',\
|
||||||
sp,'Color: 0x'
|
it_IT,'Annulla',\
|
||||||
lsz s_tabpos,\
|
et_EE,'Tühista',\
|
||||||
ru,'<27> ᯮ«®¦¥¨¥ § ª« ¤®ª',\
|
es_ES,'Cancelar'
|
||||||
en,'Tabs placement',\
|
|
||||||
it,'Posizionamento delle schede',\
|
lsz s_color,\
|
||||||
et,'Saki asetus',\
|
ru_RU,'–¢¥â: 0x',\
|
||||||
sp,'Lugar de tabulador'
|
en_US,'Color: 0x',\
|
||||||
|
it_IT,'Colore: 0x',\
|
||||||
lsz s_enter_filename,\
|
et_EE,'Värv: 0x',\
|
||||||
ru,<'‚¢¥¤¨â¥ ¨¬ï ä ©« ',0>,\
|
es_ES,'Color: 0x'
|
||||||
en,<'Enter filename',0>,\
|
|
||||||
it,<'Inserisci il nome del file',0>,\
|
lsz s_tabpos,\
|
||||||
et,<'Sisesta faili nimi',0>,\
|
ru_RU,'<27> ᯮ«®¦¥¨¥ § ª« ¤®ª',\
|
||||||
sp,<'Ingresa el nombre del archivo',0>
|
en_US,'Tabs placement',\
|
||||||
|
it_IT,'Posizionamento delle schede',\
|
||||||
lsz s_ask_save,\
|
et_EE,'Saki asetus',\
|
||||||
ru,<'†¥« ¥â¥ á®åà ¨âì?',0>,\
|
es_ES,'Lugar de tabulador'
|
||||||
en,<'Would you like to save?',0>,\
|
|
||||||
it,<'Vorresti salvare?',0>,\
|
lsz s_enter_filename,\
|
||||||
et,<'Kas soovite salvestada?',0>,\ ; Now correct
|
ru_RU,<'‚¢¥¤¨â¥ ¨¬ï ä ©« ',0>,\
|
||||||
sp,<'¿Quieres guardar?',0>
|
en_US,<'Enter filename',0>,\
|
||||||
|
it_IT,<'Inserisci il nome del file',0>,\
|
||||||
lsz s_enter_text_to_find,\
|
et_EE,<'Sisesta faili nimi',0>,\
|
||||||
ru,<'‚¢¥¤¨â¥ ⥪áâ ¤«ï ¯®¨áª ',0>,\
|
es_ES,<'Ingresa el nombre del archivo',0>
|
||||||
en,<'Enter text to find',0>,\
|
|
||||||
it,<'Inserisci il testo per trovare',0>,\
|
lsz s_ask_save,\
|
||||||
et,<'Sisesta otsitav tekst',0>,\
|
ru_RU,<'†¥« ¥â¥ á®åà ¨âì?',0>,\
|
||||||
sp,<'Ingresa el texto a buscar',0>
|
en_US,<'Would you like to save?',0>,\
|
||||||
|
it_IT,<'Vorresti salvare?',0>,\
|
||||||
lsz s_enter_text_to_replace,\
|
et_EE,<'Kas soovite salvestada?',0>,\
|
||||||
ru,<'‚¢¥¤¨â¥ ⥪áâ ¤«ï § ¬¥ë',0>,\
|
es_ES,<'¿Quieres guardar?',0>
|
||||||
en,<'Enter text to replace',0>,\
|
|
||||||
it,<'Inserisci il testo da sostituire',0>,\
|
lsz s_enter_text_to_find,\
|
||||||
et,<'Sisesta asendatav tekst',0>,\
|
ru_RU,<'‚¢¥¤¨â¥ ⥪áâ ¤«ï ¯®¨áª ',0>,\
|
||||||
sp,<'Ingresa el texto a reemplazar',0>
|
en_US,<'Enter text to find',0>,\
|
||||||
|
it_IT,<'Inserisci il testo per trovare',0>,\
|
||||||
lsz s_text_not_found,\
|
et_EE,<'Sisesta otsitav tekst',0>,\
|
||||||
ru,<'„®á⨣ãâ ª®¥æ ä ©« , ⥪áâ ¥ ©¤¥',0>,\
|
es_ES,<'Ingresa el texto a buscar',0>
|
||||||
en,<'Reached end of file, text not found',0>,\
|
|
||||||
it,<'Raggiunta la fine del file, testo non trovato',0>,\
|
lsz s_enter_text_to_replace,\
|
||||||
et,<'Faili lõpp, teksti ei leitud',0>,\
|
ru_RU,<'‚¢¥¤¨â¥ ⥪áâ ¤«ï § ¬¥ë',0>,\
|
||||||
sp,<'Se llegó al final del archivo, texto no encontrado',0>
|
en_US,<'Enter text to replace',0>,\
|
||||||
|
it_IT,<'Inserisci il testo da sostituire',0>,\
|
||||||
lszc s_fs_error,b,\
|
et_EE,<'Sisesta asendatav tekst',0>,\
|
||||||
ru,<'Ž¯¥à æ¨ï § ¢¥àè¥ ãá¯¥è® (0)',0>,\
|
es_ES,<'Ingresa el texto a reemplazar',0>
|
||||||
ru,<'',0>,\
|
|
||||||
ru,<'”ãªæ¨ï ¥ ¯®¤¤¥à¦¨¢ ¥âáï ¤«ï ¤ ®© ä ©«®¢®© á¨á⥬ë (2)',0>,\
|
lsz s_text_not_found,\
|
||||||
ru,<'<27>¥¨§¢¥áâ ï ä ©«®¢ ï á¨á⥬ (3)',0>,\
|
ru_RU,<'„®á⨣ãâ ª®¥æ ä ©« , ⥪áâ ¥ ©¤¥',0>,\
|
||||||
ru,<'',0>,\
|
en_US,<'Reached end of file, text not found',0>,\
|
||||||
ru,<'<27>¥¢®§¬®¦® ®âªàëâì ä ©« (5)',0>,\
|
it_IT,<'Raggiunta la fine del file, testo non trovato',0>,\
|
||||||
ru,<'Ž¯¥à æ¨ï § ¢¥àè¥ ãá¯¥è® (6)',0>,\
|
et_EE,<'Faili lõpp, teksti ei leitud',0>,\
|
||||||
ru,<'€¤à¥á 室¨âáï § £à ¨æ ¬¨ ¯ ¬ï⨠¯à®£à ¬¬ë (7)',0>,\
|
es_ES,<'Se llegó al final del archivo, texto no encontrado',0>
|
||||||
ru,<'<27> ¤¨áª¥ ¥â ᢮¡®¤®£® ¬¥áâ (8)',0>,\
|
|
||||||
ru,<'’ ¡«¨æ FAT ã¨ç⮦¥ (9)',0>,\
|
lszc s_fs_error,b,\
|
||||||
ru,<'„®áâ㯠§ ¯à¥éñ (10)',0>,\
|
ru_RU,<'Ž¯¥à æ¨ï § ¢¥àè¥ ãá¯¥è® (0)',0>,\
|
||||||
ru,<'Žè¨¡ª ãáâனá⢠(11)',0>,\
|
ru_RU,<'',0>,\
|
||||||
\
|
ru_RU,<'”ãªæ¨ï ¥ ¯®¤¤¥à¦¨¢ ¥âáï ¤«ï ¤ ®© ä ©«®¢®© á¨á⥬ë (2)',0>,\
|
||||||
en,<'Operation executed successfully (0)',0>,\
|
ru_RU,<'<27>¥¨§¢¥áâ ï ä ©«®¢ ï á¨á⥬ (3)',0>,\
|
||||||
en,<'',0>,\
|
ru_RU,<'',0>,\
|
||||||
en,<'Function is not supported for the given filesystem (2)',0>,\
|
ru_RU,<'<27>¥¢®§¬®¦® ®âªàëâì ä ©« (5)',0>,\
|
||||||
en,<'Unknown filesystem (3)',0>,\
|
ru_RU,<'Ž¯¥à æ¨ï § ¢¥àè¥ ãá¯¥è® (6)',0>,\
|
||||||
en,<'',0>,\
|
ru_RU,<'€¤à¥á 室¨âáï § £à ¨æ ¬¨ ¯ ¬ï⨠¯à®£à ¬¬ë (7)',0>,\
|
||||||
en,<'Unable to open file (5)',0>,\
|
ru_RU,<'<27> ¤¨áª¥ ¥â ᢮¡®¤®£® ¬¥áâ (8)',0>,\
|
||||||
en,<'Operation executed successfully (6)',0>,\
|
ru_RU,<'’ ¡«¨æ FAT ã¨ç⮦¥ (9)',0>,\
|
||||||
en,<'Pointer lies outside of application memory (7)',0>,\
|
ru_RU,<'„®áâ㯠§ ¯à¥éñ (10)',0>,\
|
||||||
en,<'Disk is full (8)',0>,\
|
ru_RU,<'Žè¨¡ª ãáâனá⢠(11)',0>,\
|
||||||
en,<'FAT table is destroyed (9)',0>,\
|
\
|
||||||
en,<'Access denied (10)',0>,\
|
en_US,<'Operation executed successfully (0)',0>,\
|
||||||
en,<'Device error (11)',0>,\
|
en_US,<'',0>,\
|
||||||
\
|
en_US,<'Function is not supported for the given filesystem (2)',0>,\
|
||||||
it,<'Operazione eseguita correttamente (0)',0>,\
|
en_US,<'Unknown filesystem (3)',0>,\
|
||||||
it,<'',0>,\
|
en_US,<'',0>,\
|
||||||
it,<'La funzione non e supportata per il file system specificato (2)', 0>, \
|
en_US,<'Unable to open file (5)',0>,\
|
||||||
it,<'Unknown filesystem (3)',0>,\
|
en_US,<'Operation executed successfully (6)',0>,\
|
||||||
it,<'',0>,\
|
en_US,<'Pointer lies outside of application memory (7)',0>,\
|
||||||
it,<'Impossibile aprire il file (5)',0>,\
|
en_US,<'Disk is full (8)',0>,\
|
||||||
it,<'Operazione eseguita correttamente (6)',0>,\
|
en_US,<'FAT table is destroyed (9)',0>,\
|
||||||
it,<'Il puntatore si trova al di fuori della memoria dell',96,'applicazione (7)', 0>, \
|
en_US,<'Access denied (10)',0>,\
|
||||||
it,<'Il disco e pieno (8)',0>,\
|
en_US,<'Device error (11)',0>,\
|
||||||
it,<'La tabella FAT e distrutta (9)',0>,\
|
\
|
||||||
it,<'Accesso negato (10)',0>,\
|
it_IT,<'Operazione eseguita correttamente (0)',0>,\
|
||||||
it,<'Errore dispositivo (11)',0>,\
|
it_IT,<'',0>,\
|
||||||
\
|
it_IT,<'La funzione non e supportata per il file system specificato (2)', 0>, \
|
||||||
et,<'Operatsioon käivitati edukalt (0)',0>,\
|
it_IT,<'Unknown filesystem (3)',0>,\
|
||||||
et,<'',0>,\
|
it_IT,<'',0>,\
|
||||||
et,<'Failisüsteem ei toeta funktsiooni (2)',0>,\
|
it_IT,<'Impossibile aprire il file (5)',0>,\
|
||||||
et,<'Tundmatu failisüsteem (3)',0>,\
|
it_IT,<'Operazione eseguita correttamente (6)',0>,\
|
||||||
et,<'',0>,\
|
it_IT,<'Il puntatore si trova al di fuori della memoria dell',96,'applicazione (7)', 0>, \
|
||||||
et,<'Faili ei suudetud avada (5)',0>,\
|
it_IT,<'Il disco e pieno (8)',0>,\
|
||||||
et,<'Operatsioon käivitatud edukalt (6)',0>,\
|
it_IT,<'La tabella FAT e distrutta (9)',0>,\
|
||||||
et,<'Viit on väljaspool programmi mälu (7)',0>,\
|
it_IT,<'Accesso negato (10)',0>,\
|
||||||
et,<'Ketas täis (8)',0>,\
|
it_IT,<'Errore dispositivo (11)',0>,\
|
||||||
et,<'FAT tabel hävitatud (9)',0>,\
|
\
|
||||||
et,<'Juurdepääs keelatud (10)',0>,\
|
et_EE,<'Operatsioon käivitati edukalt (0)',0>,\
|
||||||
et,<'Seadme viga (11)',0>,\
|
et_EE,<'',0>,\
|
||||||
\
|
et_EE,<'Failisüsteem ei toeta funktsiooni (2)',0>,\
|
||||||
sp,<'Operación ejecutada correctamente (0)',0>,\
|
et_EE,<'Tundmatu failisüsteem (3)',0>,\
|
||||||
sp,<'',0>,\
|
et_EE,<'',0>,\
|
||||||
sp,<'La función no está soportada por el sistema de archivos dado (2)',0>,\
|
et_EE,<'Faili ei suudetud avada (5)',0>,\
|
||||||
sp,<'Sistema de archivos desconocido (3)',0>,\
|
et_EE,<'Operatsioon käivitatud edukalt (6)',0>,\
|
||||||
sp,<'',0>,\
|
et_EE,<'Viit on väljaspool programmi mälu (7)',0>,\
|
||||||
sp,<'No es posible abrir el archivo (5)',0>,\
|
et_EE,<'Ketas täis (8)',0>,\
|
||||||
sp,<'Operación ejecutada correctamente (6)',0>,\
|
et_EE,<'FAT tabel hävitatud (9)',0>,\
|
||||||
sp,<'El puntero está fuera de la memoria de la aplicación (7)',0>,\
|
et_EE,<'Juurdepääs keelatud (10)',0>,\
|
||||||
sp,<'El disco está lleno (8)',0>,\
|
et_EE,<'Seadme viga (11)',0>,\
|
||||||
sp,<'La tabla FAT está destruida (9)',0>,\
|
\
|
||||||
sp,<'Acceso denegado (10)',0>,\
|
es_ES,<'Operación ejecutada correctamente (0)',0>,\
|
||||||
sp,<'Error de dispositivo (11)',0>
|
es_ES,<'',0>,\
|
||||||
|
es_ES,<'La función no está soportada por el sistema de archivos dado (2)',0>,\
|
||||||
lszc s_appearance,b,\
|
es_ES,<'Sistema de archivos desconocido (3)',0>,\
|
||||||
ru,'’¥ªáâ',\
|
es_ES,<'',0>,\
|
||||||
ru,'”®',\
|
es_ES,<'No es posible abrir el archivo (5)',0>,\
|
||||||
ru,'’¥ªá⠢뤥«¥¨ï',\
|
es_ES,<'Operación ejecutada correctamente (6)',0>,\
|
||||||
ru,'”® ¢ë¤¥«¥¨ï',\
|
es_ES,<'El puntero está fuera de la memoria de la aplicación (7)',0>,\
|
||||||
ru,'‘¨¬¢®«ë',\
|
es_ES,<'El disco está lleno (8)',0>,\
|
||||||
ru,'—¨á« ',\
|
es_ES,<'La tabla FAT está destruida (9)',0>,\
|
||||||
ru,'‘âப¨',\
|
es_ES,<'Acceso denegado (10)',0>,\
|
||||||
ru,'Š®¬¬¥â ਨ',\
|
es_ES,<'Error de dispositivo (11)',0>
|
||||||
ru,'ˆ§¬¥ñë¥ áâப¨',\
|
|
||||||
ru,'‘®åà ñë¥ áâப¨',\
|
lszc s_appearance,b,\
|
||||||
\
|
ru_RU,'’¥ªáâ',\
|
||||||
en,'Text',\
|
ru_RU,'”®',\
|
||||||
en,'Background',\
|
ru_RU,'’¥ªá⠢뤥«¥¨ï',\
|
||||||
en,'Selection text',\
|
ru_RU,'”® ¢ë¤¥«¥¨ï',\
|
||||||
en,'Selection background',\
|
ru_RU,'‘¨¬¢®«ë',\
|
||||||
en,'Symbols',\
|
ru_RU,'—¨á« ',\
|
||||||
en,'Numbers',\
|
ru_RU,'‘âப¨',\
|
||||||
en,'Strings',\
|
ru_RU,'Š®¬¬¥â ਨ',\
|
||||||
en,'Comments',\
|
ru_RU,'ˆ§¬¥ñë¥ áâப¨',\
|
||||||
en,'Modified lines',\
|
ru_RU,'‘®åà ñë¥ áâப¨',\
|
||||||
en,'Saved lines',\
|
\
|
||||||
\
|
en_US,'Text',\
|
||||||
it,'Testo',\
|
en_US,'Background',\
|
||||||
it,'Sfondo',\
|
en_US,'Selection text',\
|
||||||
it,'Testo di selezione',\
|
en_US,'Selection background',\
|
||||||
it,'Sfondo di selezione',\
|
en_US,'Symbols',\
|
||||||
it,'Simboli',\
|
en_US,'Numbers',\
|
||||||
it,'Numeri',\
|
en_US,'Strings',\
|
||||||
it,'Stringhe',\
|
en_US,'Comments',\
|
||||||
it,'Commenti',\
|
en_US,'Modified lines',\
|
||||||
it,'Linee modificate',\
|
en_US,'Saved lines',\
|
||||||
it,'Linee salvate',\
|
\
|
||||||
\
|
it_IT,'Testo',\
|
||||||
et,'Tekst',\
|
it_IT,'Sfondo',\
|
||||||
et,'Taust',\
|
it_IT,'Testo di selezione',\
|
||||||
et,'Valitud tekst',\
|
it_IT,'Sfondo di selezione',\
|
||||||
et,'Valitud taust',\
|
it_IT,'Simboli',\
|
||||||
et,'Sümbolid',\
|
it_IT,'Numeri',\
|
||||||
et,'Numbrid',\
|
it_IT,'Stringhe',\
|
||||||
et,'Stringid',\
|
it_IT,'Commenti',\
|
||||||
et,'Kommentaarid',\
|
it_IT,'Linee modificate',\
|
||||||
et,'Muudetud read',\
|
it_IT,'Linee salvate',\
|
||||||
et,'Salvestatud read',\
|
\
|
||||||
\
|
et_EE,'Tekst',\
|
||||||
sp,'Texto',\
|
et_EE,'Taust',\
|
||||||
sp,'Fondo',\
|
et_EE,'Valitud tekst',\
|
||||||
sp,'Texto de selección',\
|
et_EE,'Valitud taust',\
|
||||||
sp,'Fondo de selección',\
|
et_EE,'Sümbolid',\
|
||||||
sp,'Símbolos',\
|
et_EE,'Numbrid',\
|
||||||
sp,'Números',\
|
et_EE,'Stringid',\
|
||||||
sp,'Cadenas',\
|
et_EE,'Kommentaarid',\
|
||||||
sp,'Comentarios',\
|
et_EE,'Muudetud read',\
|
||||||
sp,'Líneas modificadas',\
|
et_EE,'Salvestatud read',\
|
||||||
sp,'Líneas guardadas'
|
\
|
||||||
|
es_ES,'Texto',\
|
||||||
lsz sysfuncs_filename,\
|
es_ES,'Fondo',\
|
||||||
ru,<'SYSFUNCR.TXT',0>,\
|
es_ES,'Texto de selección',\
|
||||||
en,<'SYSFUNCS.TXT',0>,\
|
es_ES,'Fondo de selección',\
|
||||||
it,<'SYSFUNCS.TXT',0>,\
|
es_ES,'Símbolos',\
|
||||||
et,<'SYSFUNCET.TXT',0>,\
|
es_ES,'Números',\
|
||||||
sp,<'SYSFUNCS.TXT',0>
|
es_ES,'Cadenas',\
|
||||||
|
es_ES,'Comentarios',\
|
||||||
sz s_example,'/sys/example.asm'
|
es_ES,'Líneas modificadas',\
|
||||||
sz s_still ,'still'
|
es_ES,'Líneas guardadas'
|
||||||
|
|
||||||
|
lsz sysfuncs_filename,\
|
||||||
|
ru_RU,<'SYSFUNCR.TXT',0>,\
|
||||||
|
en_US,<'SYSFUNCS.TXT',0>,\
|
||||||
|
it_IT,<'SYSFUNCS.TXT',0>,\
|
||||||
|
et_EE,<'SYSFUNCET.TXT',0>,\
|
||||||
|
es_ES,<'SYSFUNCS.TXT',0>
|
||||||
|
|
||||||
|
sz s_example,'/sys/example.asm'
|
||||||
|
sz s_still ,'still'
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
; ;
|
; ;
|
||||||
; On base SYSTREE FILE COPIER 1.02 ;
|
; On base SYSTREE FILE COPIER 1.02 ;
|
||||||
; Ivan Poddubny ivan-yar@bk.ru ;
|
; Ivan Poddubny ivan-yar@bk.ru ;
|
||||||
; ;
|
; ;
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
;„ ï ¯à®£ ¥é¥ áëà ï ¨ £«îç ï ® 㦥 ª®¥ ª ª à ¡®â ¥â
|
;„ ï ¯à®£ ¥é¥ áëà ï ¨ £«îç ï ® 㦥 ª®¥ ª ª à ¡®â ¥â
|
||||||
@ -23,11 +23,11 @@
|
|||||||
dd 0x10000 ; esp
|
dd 0x10000 ; esp
|
||||||
dd param_area , 0x0 ; I_Param , I_Icon
|
dd param_area , 0x0 ; I_Param , I_Icon
|
||||||
|
|
||||||
include 'lang.inc'
|
include 'lang.inc' ; Language support for locales: ru_RU (CP866), en_US.
|
||||||
include '..\..\..\macros.inc' ; very useful stuff for MeOS
|
include '..\..\..\macros.inc' ; very useful stuff for MeOS
|
||||||
include 'ascl.inc'
|
include 'ascl.inc'
|
||||||
|
|
||||||
START: ; start of execution
|
START: ; start of execution
|
||||||
|
|
||||||
; <20> à ¬¥âàë:
|
; <20> à ¬¥âàë:
|
||||||
; db n1 = ¤«¨ ¯ã⨠ª ¨áâ®ç¨ªã
|
; db n1 = ¤«¨ ¯ã⨠ª ¨áâ®ç¨ªã
|
||||||
@ -187,7 +187,7 @@ draw_window:
|
|||||||
mov edi,labelt ; WINDOW LABEL
|
mov edi,labelt ; WINDOW LABEL
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
|
|
||||||
mov eax,8
|
mov eax,8
|
||||||
mov ebx,105*65536+290
|
mov ebx,105*65536+290
|
||||||
mov ecx,33*65536+12
|
mov ecx,33*65536+12
|
||||||
@ -264,12 +264,13 @@ errors:
|
|||||||
db "(§ ¯¨áì) ¥¨§¢¥áâ ï ®è¨¡ª "
|
db "(§ ¯¨áì) ¥¨§¢¥áâ ï ®è¨¡ª "
|
||||||
db "<22>ãâì ª ¨áâ®ç¨ªã ¨ ¯à¨¥¬¨ªã ¥ 㪠§ ë!!! "
|
db "<22>ãâì ª ¨áâ®ç¨ªã ¨ ¯à¨¥¬¨ªã ¥ 㪠§ ë!!! "
|
||||||
db "<22>ãâì ª ¯à¨¥¬¨ªã ¥ 㪠§ !!! "
|
db "<22>ãâì ª ¯à¨¥¬¨ªã ¥ 㪠§ !!! "
|
||||||
else
|
|
||||||
|
else ; Default to en_US
|
||||||
text:
|
text:
|
||||||
db 'SOURCE: | '
|
db 'SOURCE: | '
|
||||||
db 'DESTINATION: | '
|
db 'DESTINATION: | '
|
||||||
db ' '
|
db ' '
|
||||||
db 'x' ; <- END MARKER, DONT DELETE
|
db 'x' ; <- END MARKER, DO NOT DELETE
|
||||||
labelt:
|
labelt:
|
||||||
db 'SYSTREE FILE COPIER'
|
db 'SYSTREE FILE COPIER'
|
||||||
labellen:
|
labellen:
|
||||||
@ -292,6 +293,7 @@ errors:
|
|||||||
db "(write) unknown error "
|
db "(write) unknown error "
|
||||||
db "Path to source is not given!!! "
|
db "Path to source is not given!!! "
|
||||||
db "Path to destination is not given!!! "
|
db "Path to destination is not given!!! "
|
||||||
|
|
||||||
end if
|
end if
|
||||||
|
|
||||||
;0123456789012345678901234567890123456789012
|
;0123456789012345678901234567890123456789012
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,490 +1,490 @@
|
|||||||
;
|
;
|
||||||
; The famous game 15
|
; The famous game 15
|
||||||
; Author: Lloyd, coded by Ivushkin Andrey
|
; Author: Lloyd, coded by Ivushkin Andrey
|
||||||
; Compile with FASM
|
; Compile with FASM
|
||||||
;
|
;
|
||||||
|
|
||||||
include 'lang.inc'
|
include 'lang.inc' ; Language support for locales: ru_RU (CP866), it_IT, de_DE, en_US.
|
||||||
include '..\..\..\macros.inc' ; decreases program size (not required)
|
include '..\..\..\macros.inc' ; decreases program size (not required)
|
||||||
|
|
||||||
StatusColor equ 0x00ffffff
|
StatusColor equ 0x00ffffff
|
||||||
StatusColor2 equ 0x00dc1e14
|
StatusColor2 equ 0x00dc1e14
|
||||||
BgdColor equ 0x14aabbcc
|
BgdColor equ 0x14aabbcc
|
||||||
|
|
||||||
; Main window dimensions
|
; Main window dimensions
|
||||||
XXwindow equ 200 shl 16+276
|
XXwindow equ 200 shl 16+276
|
||||||
YYwindow equ 200 shl 16+300
|
YYwindow equ 200 shl 16+300
|
||||||
; Status bar
|
; Status bar
|
||||||
XYstatus equ 35 shl 16+283
|
XYstatus equ 35 shl 16+283
|
||||||
XXbar equ 35 shl 16+136
|
XXbar equ 35 shl 16+136
|
||||||
YYbar equ 280 shl 16+15
|
YYbar equ 280 shl 16+15
|
||||||
; Buttons
|
; Buttons
|
||||||
BtnTop equ 28
|
BtnTop equ 28
|
||||||
BtnLeft equ 13
|
BtnLeft equ 13
|
||||||
BtnSize equ 60
|
BtnSize equ 60
|
||||||
BtnColor equ 0xafbb55
|
BtnColor equ 0xafbb55
|
||||||
BtnColor2 equ 0x0228c314
|
BtnColor2 equ 0x0228c314
|
||||||
|
|
||||||
NumColor equ 0x10000000
|
NumColor equ 0x10000000
|
||||||
; Number shifting for nice look
|
; Number shifting for nice look
|
||||||
NumShift equ 23 shl 16+23
|
NumShift equ 23 shl 16+23
|
||||||
NumShift2 equ 4 shl 16
|
NumShift2 equ 4 shl 16
|
||||||
; Shuffle button
|
; Shuffle button
|
||||||
XXSh equ 202 shl 16+60
|
XXSh equ 202 shl 16+60
|
||||||
YYSh equ 280 shl 16+12
|
YYSh equ 280 shl 16+12
|
||||||
XYShText equ 212 shl 16+283
|
XYShText equ 212 shl 16+283
|
||||||
|
|
||||||
; Conf button
|
; Conf button
|
||||||
XXCnf equ 13 shl 16+13
|
XXCnf equ 13 shl 16+13
|
||||||
YYCnf equ 280 shl 16+12
|
YYCnf equ 280 shl 16+12
|
||||||
XYCnfText equ 18 shl 16+283
|
XYCnfText equ 18 shl 16+283
|
||||||
|
|
||||||
; Position of the 'hole'
|
; Position of the 'hole'
|
||||||
null equ (curconf+16)
|
null equ (curconf+16)
|
||||||
; Amount of moves to perform shuffle
|
; Amount of moves to perform shuffle
|
||||||
SH_CYCLES equ 400
|
SH_CYCLES equ 400
|
||||||
; (Amount of tasks)-1
|
; (Amount of tasks)-1
|
||||||
CONF_COUNT equ 2
|
CONF_COUNT equ 2
|
||||||
|
|
||||||
use32
|
use32
|
||||||
|
|
||||||
org 0x0
|
org 0x0
|
||||||
|
|
||||||
db 'MENUET01'
|
db 'MENUET01'
|
||||||
dd 0x01
|
dd 0x01
|
||||||
dd START
|
dd START
|
||||||
dd I_END
|
dd I_END
|
||||||
dd 0x2000 ; 8 Kb
|
dd 0x2000 ; 8 Kb
|
||||||
dd 0x2000
|
dd 0x2000
|
||||||
dd 0x0
|
dd 0x0
|
||||||
dd 0x0
|
dd 0x0
|
||||||
|
|
||||||
|
|
||||||
START:
|
START:
|
||||||
mov [cptr],CONF_COUNT ; number of task
|
mov [cptr],CONF_COUNT ; number of task
|
||||||
mov eax,3
|
mov eax,3
|
||||||
mcall
|
mcall
|
||||||
mov cl,16
|
mov cl,16
|
||||||
ror eax,cl
|
ror eax,cl
|
||||||
mov [generator],eax ; random generator from Tetris
|
mov [generator],eax ; random generator from Tetris
|
||||||
init:
|
init:
|
||||||
mov ecx,17
|
mov ecx,17
|
||||||
movzx eax,[cptr]
|
movzx eax,[cptr]
|
||||||
inc eax
|
inc eax
|
||||||
cmp eax,CONF_COUNT
|
cmp eax,CONF_COUNT
|
||||||
jna init_ok
|
jna init_ok
|
||||||
xor eax,eax ; cycling 0..CONF_COUNT
|
xor eax,eax ; cycling 0..CONF_COUNT
|
||||||
init_ok:
|
init_ok:
|
||||||
mov [cptr],al
|
mov [cptr],al
|
||||||
mov esi,eax
|
mov esi,eax
|
||||||
shl esi,4
|
shl esi,4
|
||||||
add esi,conf
|
add esi,conf
|
||||||
add esi,eax
|
add esi,eax
|
||||||
add al,0x31
|
add al,0x31
|
||||||
mov [txtTitle+17],al ;task number to program title
|
mov [txtTitle+17],al ;task number to program title
|
||||||
mov [task],esi
|
mov [task],esi
|
||||||
mov edi,curconf
|
mov edi,curconf
|
||||||
rep movsb ; initial configuration
|
rep movsb ; initial configuration
|
||||||
|
|
||||||
mov [sts],4
|
mov [sts],4
|
||||||
jmp red
|
jmp red
|
||||||
SHUF:
|
SHUF:
|
||||||
call shuffle ; immediate shuffle
|
call shuffle ; immediate shuffle
|
||||||
red: ; window redraw
|
red: ; window redraw
|
||||||
|
|
||||||
call draw_window
|
call draw_window
|
||||||
|
|
||||||
still: ; MAIN PROGRAM CYCLE
|
still: ; MAIN PROGRAM CYCLE
|
||||||
|
|
||||||
mov eax,10 ; wait for event
|
mov eax,10 ; wait for event
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
cmp eax,1 ; redraw? -
|
cmp eax,1 ; redraw? -
|
||||||
je red ; goto red
|
je red ; goto red
|
||||||
cmp eax,2 ; key pressed? -
|
cmp eax,2 ; key pressed? -
|
||||||
je key ; goto key
|
je key ; goto key
|
||||||
cmp eax,3 ; button pressed? -
|
cmp eax,3 ; button pressed? -
|
||||||
je button ; goto button
|
je button ; goto button
|
||||||
|
|
||||||
jmp still ; no more events to process
|
jmp still ; no more events to process
|
||||||
|
|
||||||
key: ; Key pressed
|
key: ; Key pressed
|
||||||
mov eax,2
|
mov eax,2
|
||||||
mcall
|
mcall
|
||||||
shr eax,8
|
shr eax,8
|
||||||
cmp eax,32 ; <Space> = Shuffle
|
cmp eax,32 ; <Space> = Shuffle
|
||||||
je SHUF
|
je SHUF
|
||||||
cmp eax,13 ; <Enter> = Choose task
|
cmp eax,13 ; <Enter> = Choose task
|
||||||
je init
|
je init
|
||||||
cmp eax,176
|
cmp eax,176
|
||||||
jl still
|
jl still
|
||||||
sub eax,176
|
sub eax,176
|
||||||
cmp eax,3
|
cmp eax,3
|
||||||
ja still
|
ja still
|
||||||
movzx eax,byte [eax+correct] ; 'delta' value from correct[]
|
movzx eax,byte [eax+correct] ; 'delta' value from correct[]
|
||||||
jmp m_check
|
jmp m_check
|
||||||
|
|
||||||
button: ; Button pressed
|
button: ; Button pressed
|
||||||
mov eax,17
|
mov eax,17
|
||||||
mcall
|
mcall
|
||||||
shr eax,8
|
shr eax,8
|
||||||
sub eax,2
|
sub eax,2
|
||||||
|
|
||||||
cmp eax,-1 ; id == 1 (closeme)?
|
cmp eax,-1 ; id == 1 (closeme)?
|
||||||
jne noclose
|
jne noclose
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
noclose:
|
noclose:
|
||||||
jl SHUF ; Shuffle (id=0) pressed
|
jl SHUF ; Shuffle (id=0) pressed
|
||||||
cmp eax,18
|
cmp eax,18
|
||||||
je init ; Conf button pressed
|
je init ; Conf button pressed
|
||||||
sub al,byte [null]
|
sub al,byte [null]
|
||||||
mov edi,correct
|
mov edi,correct
|
||||||
mov ecx,4
|
mov ecx,4
|
||||||
repne scasb ; checking for valid move-part 1
|
repne scasb ; checking for valid move-part 1
|
||||||
jne fail
|
jne fail
|
||||||
m_check:
|
m_check:
|
||||||
cmp byte[sts],4 ; puzzle completed, blocking buttons
|
cmp byte[sts],4 ; puzzle completed, blocking buttons
|
||||||
ja still
|
ja still
|
||||||
call move_check ; checking for valid move-part 2
|
call move_check ; checking for valid move-part 2
|
||||||
jnc fail
|
jnc fail
|
||||||
inc [move_count]
|
inc [move_count]
|
||||||
call draw_moves
|
call draw_moves
|
||||||
fail:
|
fail:
|
||||||
jmp still ; ¢®§¢à é ¥¬áï
|
jmp still ; ¢®§¢à é ¥¬áï
|
||||||
|
|
||||||
; *******************************
|
; *******************************
|
||||||
; ******* WINDOW DRAWING *******
|
; ******* WINDOW DRAWING *******
|
||||||
; *******************************
|
; *******************************
|
||||||
|
|
||||||
draw_window:
|
draw_window:
|
||||||
|
|
||||||
mcall 12, 1 ; begin draw
|
mcall 12, 1 ; begin draw
|
||||||
mcall 0, XXwindow, YYwindow, BgdColor,, txtTitle ; CREATING WINDOW
|
mcall 0, XXwindow, YYwindow, BgdColor,, txtTitle ; CREATING WINDOW
|
||||||
|
|
||||||
|
|
||||||
mov eax,8 ; SHUFFLE BUTTON
|
mov eax,8 ; SHUFFLE BUTTON
|
||||||
mov ebx,XXSh
|
mov ebx,XXSh
|
||||||
mov ecx,YYSh
|
mov ecx,YYSh
|
||||||
xor edx,edx
|
xor edx,edx
|
||||||
mov esi,BtnColor
|
mov esi,BtnColor
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov ebx,XXCnf ; CONF BUTTON
|
mov ebx,XXCnf ; CONF BUTTON
|
||||||
mov ecx,YYCnf
|
mov ecx,YYCnf
|
||||||
mov edx,20
|
mov edx,20
|
||||||
;mov esi,BtnColor
|
;mov esi,BtnColor
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov ebx, XYShText ; SHUFFLE TEXT
|
mov ebx, XYShText ; SHUFFLE TEXT
|
||||||
mov ecx, StatusColor
|
mov ecx, StatusColor
|
||||||
mov edx,txtSh
|
mov edx,txtSh
|
||||||
mov esi,lenSh-txtSh
|
mov esi,lenSh-txtSh
|
||||||
mov eax,4
|
mov eax,4
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov ebx, XYCnfText ; CONF TEXT
|
mov ebx, XYCnfText ; CONF TEXT
|
||||||
mov edx,lenVictory-1
|
mov edx,lenVictory-1
|
||||||
mov esi,1
|
mov esi,1
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov ecx, 16 ; FIELD BUTTONS
|
mov ecx, 16 ; FIELD BUTTONS
|
||||||
dbut:
|
dbut:
|
||||||
call draw_button
|
call draw_button
|
||||||
loop dbut
|
loop dbut
|
||||||
|
|
||||||
call draw_moves
|
call draw_moves
|
||||||
|
|
||||||
mcall 12, 2 ; end of drawing
|
mcall 12, 2 ; end of drawing
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
; *********************************************
|
; *********************************************
|
||||||
; ******* DRAWING A FIELD BUTTON **************
|
; ******* DRAWING A FIELD BUTTON **************
|
||||||
; *********************************************
|
; *********************************************
|
||||||
; ECX - button number
|
; ECX - button number
|
||||||
|
|
||||||
draw_button:
|
draw_button:
|
||||||
pusha
|
pusha
|
||||||
dec ecx
|
dec ecx
|
||||||
; calculating button dimensions
|
; calculating button dimensions
|
||||||
mov edi, ecx
|
mov edi, ecx
|
||||||
lea edx,[ecx+2]
|
lea edx,[ecx+2]
|
||||||
mov ebx,ecx
|
mov ebx,ecx
|
||||||
and ebx,11b
|
and ebx,11b
|
||||||
shr ecx,2
|
shr ecx,2
|
||||||
|
|
||||||
imul ebx,BtnSize+3
|
imul ebx,BtnSize+3
|
||||||
add ebx,BtnLeft
|
add ebx,BtnLeft
|
||||||
shl ebx,16
|
shl ebx,16
|
||||||
add ebx,BtnSize
|
add ebx,BtnSize
|
||||||
|
|
||||||
imul ecx,BtnSize+3
|
imul ecx,BtnSize+3
|
||||||
add ecx,BtnTop
|
add ecx,BtnTop
|
||||||
shl ecx,16
|
shl ecx,16
|
||||||
add ecx,BtnSize
|
add ecx,BtnSize
|
||||||
movzx eax,byte [null]
|
movzx eax,byte [null]
|
||||||
cmp eax,edi
|
cmp eax,edi
|
||||||
jne no_hole
|
jne no_hole
|
||||||
|
|
||||||
pusha
|
pusha
|
||||||
inc ebx
|
inc ebx
|
||||||
inc ecx
|
inc ecx
|
||||||
mov edx,BgdColor
|
mov edx,BgdColor
|
||||||
mov eax,13 ; clearing - 'hole'
|
mov eax,13 ; clearing - 'hole'
|
||||||
mcall
|
mcall
|
||||||
popa
|
popa
|
||||||
|
|
||||||
or edx,0x80000000 ; and removing button under it
|
or edx,0x80000000 ; and removing button under it
|
||||||
no_hole:
|
no_hole:
|
||||||
mov al,byte[edi+curconf]
|
mov al,byte[edi+curconf]
|
||||||
mov esi,[task]
|
mov esi,[task]
|
||||||
cmp al,byte[edi+esi]
|
cmp al,byte[edi+esi]
|
||||||
je highlight
|
je highlight
|
||||||
mov esi,BtnColor
|
mov esi,BtnColor
|
||||||
jmp s_rbutton
|
jmp s_rbutton
|
||||||
highlight:
|
highlight:
|
||||||
mov esi,BtnColor2
|
mov esi,BtnColor2
|
||||||
s_rbutton:
|
s_rbutton:
|
||||||
mov eax,8 ; set/remove button
|
mov eax,8 ; set/remove button
|
||||||
mcall
|
mcall
|
||||||
movzx eax,byte [null]
|
movzx eax,byte [null]
|
||||||
cmp eax,edi
|
cmp eax,edi
|
||||||
je no_text ; no digits - that's hole
|
je no_text ; no digits - that's hole
|
||||||
mov edx,ebx
|
mov edx,ebx
|
||||||
shr ecx,16
|
shr ecx,16
|
||||||
mov dx,cx
|
mov dx,cx
|
||||||
add edx,NumShift
|
add edx,NumShift
|
||||||
mov ebx,0x20000
|
mov ebx,0x20000
|
||||||
movzx ecx,byte [edi+curconf]
|
movzx ecx,byte [edi+curconf]
|
||||||
cmp ecx,9
|
cmp ecx,9
|
||||||
ja two_num
|
ja two_num
|
||||||
add edx,NumShift2 ; shift to center digits
|
add edx,NumShift2 ; shift to center digits
|
||||||
sub ebx,0x10000
|
sub ebx,0x10000
|
||||||
two_num:
|
two_num:
|
||||||
mov esi,NumColor
|
mov esi,NumColor
|
||||||
mov eax,47
|
mov eax,47
|
||||||
mcall
|
mcall
|
||||||
no_text:
|
no_text:
|
||||||
popa
|
popa
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
; *********************************************
|
; *********************************************
|
||||||
; ******* DRAWING STATUS LINE *****************
|
; ******* DRAWING STATUS LINE *****************
|
||||||
; *********************************************
|
; *********************************************
|
||||||
|
|
||||||
draw_moves:
|
draw_moves:
|
||||||
mov eax, 13 ; clear area
|
mov eax, 13 ; clear area
|
||||||
mov ebx, XXbar
|
mov ebx, XXbar
|
||||||
mov ecx, YYbar
|
mov ecx, YYbar
|
||||||
mov edx, BgdColor
|
mov edx, BgdColor
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov eax, 4
|
mov eax, 4
|
||||||
mov ebx, XYstatus
|
mov ebx, XYstatus
|
||||||
mov ecx, StatusColor
|
mov ecx, StatusColor
|
||||||
cmp ax, [sts]
|
cmp ax, [sts]
|
||||||
jl report_victory
|
jl report_victory
|
||||||
jne report_moves
|
jne report_moves
|
||||||
mov edx,txtCnf ; prompt to choose configuration
|
mov edx,txtCnf ; prompt to choose configuration
|
||||||
mov esi,lenCnf-txtCnf
|
mov esi,lenCnf-txtCnf
|
||||||
jmp e_dm
|
jmp e_dm
|
||||||
report_moves:
|
report_moves:
|
||||||
mov edx,txtMoves ; how many moves done
|
mov edx,txtMoves ; how many moves done
|
||||||
mov esi,lenMoves-txtMoves
|
mov esi,lenMoves-txtMoves
|
||||||
mov eax,4
|
mov eax,4
|
||||||
mcall
|
mcall
|
||||||
mov esi,ecx
|
mov esi,ecx
|
||||||
mov edx,ebx
|
mov edx,ebx
|
||||||
add edx, 40 shl 16
|
add edx, 40 shl 16
|
||||||
mov ebx,0x030000
|
mov ebx,0x030000
|
||||||
movzx ecx, byte[move_count]
|
movzx ecx, byte[move_count]
|
||||||
mov eax,47
|
mov eax,47
|
||||||
jmp e_dm
|
jmp e_dm
|
||||||
report_victory: ; puzzle completed
|
report_victory: ; puzzle completed
|
||||||
mov ecx,StatusColor2
|
mov ecx,StatusColor2
|
||||||
mov edx,txtVictory
|
mov edx,txtVictory
|
||||||
mov esi,lenVictory-txtVictory
|
mov esi,lenVictory-txtVictory
|
||||||
e_dm:
|
e_dm:
|
||||||
mcall
|
mcall
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
; *********************************************
|
; *********************************************
|
||||||
; ********* SHUFFLE ***************************
|
; ********* SHUFFLE ***************************
|
||||||
; *********************************************
|
; *********************************************
|
||||||
|
|
||||||
shuffle:
|
shuffle:
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov [sts],ax
|
mov [sts],ax
|
||||||
mov [move_count],ax ; reset moves to 0
|
mov [move_count],ax ; reset moves to 0
|
||||||
mov [sh_off],al
|
mov [sh_off],al
|
||||||
mov eax, [generator]
|
mov eax, [generator]
|
||||||
|
|
||||||
mov ecx,SH_CYCLES
|
mov ecx,SH_CYCLES
|
||||||
sh_cycle:
|
sh_cycle:
|
||||||
sub eax,0x43ab45b5 ; next random number
|
sub eax,0x43ab45b5 ; next random number
|
||||||
ror eax,1
|
ror eax,1
|
||||||
xor eax,0x32c4324f
|
xor eax,0x32c4324f
|
||||||
ror eax,1
|
ror eax,1
|
||||||
mov [generator],eax
|
mov [generator],eax
|
||||||
|
|
||||||
push eax
|
push eax
|
||||||
and eax,11b ; direction 0..3
|
and eax,11b ; direction 0..3
|
||||||
movzx eax,byte [eax+correct]
|
movzx eax,byte [eax+correct]
|
||||||
call move_check
|
call move_check
|
||||||
pop eax
|
pop eax
|
||||||
jnc sh_cycle ; if fails then retry
|
jnc sh_cycle ; if fails then retry
|
||||||
loop sh_cycle
|
loop sh_cycle
|
||||||
inc byte[sh_off] ; shuffling complete
|
inc byte[sh_off] ; shuffling complete
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
; *********************************************
|
; *********************************************
|
||||||
; ********* MOVE VALIDITY CHECK ***************
|
; ********* MOVE VALIDITY CHECK ***************
|
||||||
; *********************************************
|
; *********************************************
|
||||||
; AL - 'DELTA' DIRECTION
|
; AL - 'DELTA' DIRECTION
|
||||||
|
|
||||||
move_check:
|
move_check:
|
||||||
pusha
|
pusha
|
||||||
mov ah,byte [null]
|
mov ah,byte [null]
|
||||||
mov bx,ax
|
mov bx,ax
|
||||||
cmp bh,3
|
cmp bh,3
|
||||||
ja no_top
|
ja no_top
|
||||||
cmp al,-4 ; top of field
|
cmp al,-4 ; top of field
|
||||||
je no_move
|
je no_move
|
||||||
no_top:
|
no_top:
|
||||||
cmp bh,12
|
cmp bh,12
|
||||||
jb no_bottom
|
jb no_bottom
|
||||||
cmp al,4 ; bottom of field
|
cmp al,4 ; bottom of field
|
||||||
je no_move
|
je no_move
|
||||||
no_bottom:
|
no_bottom:
|
||||||
and bh,11b
|
and bh,11b
|
||||||
cmp bh,0
|
cmp bh,0
|
||||||
jnz no_left
|
jnz no_left
|
||||||
cmp al,-1 ; left of field
|
cmp al,-1 ; left of field
|
||||||
je no_move
|
je no_move
|
||||||
no_left:
|
no_left:
|
||||||
cmp bh,11b
|
cmp bh,11b
|
||||||
jnz ok
|
jnz ok
|
||||||
cmp al,1 ; right of field
|
cmp al,1 ; right of field
|
||||||
je no_move
|
je no_move
|
||||||
ok:
|
ok:
|
||||||
mov bx,ax
|
mov bx,ax
|
||||||
add bh,bl ; bh-new hole
|
add bh,bl ; bh-new hole
|
||||||
mov byte [null],bh
|
mov byte [null],bh
|
||||||
movzx ecx,ah
|
movzx ecx,ah
|
||||||
mov al,byte[ecx+curconf]
|
mov al,byte[ecx+curconf]
|
||||||
movzx edx,bh
|
movzx edx,bh
|
||||||
mov bl,byte[edx+curconf] ; swapping button & hole
|
mov bl,byte[edx+curconf] ; swapping button & hole
|
||||||
mov byte[ecx+curconf],bl
|
mov byte[ecx+curconf],bl
|
||||||
mov byte[edx+curconf],al
|
mov byte[edx+curconf],al
|
||||||
|
|
||||||
cmp byte[sh_off],0 ; if shuffle in progress,
|
cmp byte[sh_off],0 ; if shuffle in progress,
|
||||||
jz no_win ; then no redraw
|
jz no_win ; then no redraw
|
||||||
|
|
||||||
; drawing button & hole
|
; drawing button & hole
|
||||||
inc ecx
|
inc ecx
|
||||||
call draw_button
|
call draw_button
|
||||||
movzx ecx,bh
|
movzx ecx,bh
|
||||||
inc ecx
|
inc ecx
|
||||||
call draw_button
|
call draw_button
|
||||||
; testing if task completed
|
; testing if task completed
|
||||||
mov esi,[task]
|
mov esi,[task]
|
||||||
mov edi,curconf
|
mov edi,curconf
|
||||||
mov ecx,16
|
mov ecx,16
|
||||||
repe cmpsb
|
repe cmpsb
|
||||||
cmp ecx,0
|
cmp ecx,0
|
||||||
jne no_win
|
jne no_win
|
||||||
mov word[sts],6 ; puzzle done. Victory!
|
mov word[sts],6 ; puzzle done. Victory!
|
||||||
no_win:
|
no_win:
|
||||||
popa
|
popa
|
||||||
stc
|
stc
|
||||||
ret
|
ret
|
||||||
no_move:
|
no_move:
|
||||||
popa
|
popa
|
||||||
clc
|
clc
|
||||||
ret
|
ret
|
||||||
; this is deprecated debug routine
|
; this is deprecated debug routine
|
||||||
;ud:
|
;ud:
|
||||||
; ud2
|
; ud2
|
||||||
|
|
||||||
; These are data used by program
|
; These are data used by program
|
||||||
|
|
||||||
correct db 1,-4,4,-1
|
correct db 1,-4,4,-1
|
||||||
|
|
||||||
conf db 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0,15
|
conf db 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0,15
|
||||||
db 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0
|
db 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0
|
||||||
db 1,2,3,4,12,13,14,5,11,0,15,6,10,9,8,7,9
|
db 1,2,3,4,12,13,14,5,11,0,15,6,10,9,8,7,9
|
||||||
|
|
||||||
txtMoves:
|
txtMoves:
|
||||||
if lang eq ru_RU
|
if lang eq ru_RU
|
||||||
db '•®¤®¢:'
|
db '•®¤®¢:'
|
||||||
else if lang eq it_IT
|
else if lang eq it_IT
|
||||||
db 'Movimenti:'
|
db 'Movimenti:'
|
||||||
else if lang eq de_DE
|
else if lang eq de_DE
|
||||||
db 'Bewegungen:'
|
db 'Bewegungen:'
|
||||||
else
|
else ; Default to en_US
|
||||||
db 'Moves:'
|
db 'Moves:'
|
||||||
end if
|
end if
|
||||||
lenMoves:
|
lenMoves:
|
||||||
|
|
||||||
txtSh:
|
txtSh:
|
||||||
if lang eq ru_RU
|
if lang eq ru_RU
|
||||||
db '’ ᮢª '
|
db '’ ᮢª '
|
||||||
else if lang eq it_IT
|
else if lang eq it_IT
|
||||||
db 'Mischia'
|
db 'Mischia'
|
||||||
else if lang eq de_DE
|
else if lang eq de_DE
|
||||||
db 'Mischen'
|
db 'Mischen'
|
||||||
else
|
else ; Default to en_US
|
||||||
db 'Shuffle'
|
db 'Shuffle'
|
||||||
end if
|
end if
|
||||||
lenSh:
|
lenSh:
|
||||||
|
|
||||||
txtCnf:
|
txtCnf:
|
||||||
if lang eq ru_RU
|
if lang eq ru_RU
|
||||||
db '‚ë¡¥à¨â¥ § ¤ çã ¨ ¦¬¨â¥->'
|
db '‚ë¡¥à¨â¥ § ¤ çã ¨ ¦¬¨â¥->'
|
||||||
else if lang eq it_IT
|
else if lang eq it_IT
|
||||||
db 'Seleziona un compito, poi premi->'
|
db 'Seleziona un compito, poi premi->'
|
||||||
else if lang eq de_DE
|
else if lang eq de_DE
|
||||||
db 'Waehle eine Aufgabe, dann clicke au->'
|
db 'Waehle eine Aufgabe, dann clicke au->'
|
||||||
else
|
else ; Default to en_US
|
||||||
db 'Select task, then press ->'
|
db 'Select task, then press ->'
|
||||||
end if
|
end if
|
||||||
lenCnf:
|
lenCnf:
|
||||||
|
|
||||||
txtTitle: ; áâப § £®«®¢ª
|
txtTitle: ; áâப § £®«®¢ª
|
||||||
if lang eq ru_RU
|
if lang eq ru_RU
|
||||||
db 'ˆ£à 15 - § ¤ ç X', 0
|
db 'ˆ£à 15 - § ¤ ç X', 0
|
||||||
else if lang eq it_IT
|
else if lang eq it_IT
|
||||||
db 'Gioco del quindici - partita X', 0
|
db 'Gioco del quindici - partita X', 0
|
||||||
else if lang eq de_DE
|
else if lang eq de_DE
|
||||||
db '15-Puzzle - Spiel X', 0
|
db '15-Puzzle - Spiel X', 0
|
||||||
else
|
else ; Default to en_US
|
||||||
db 'Game 15 - puzzle X', 0
|
db 'Game 15 - puzzle X', 0
|
||||||
end if
|
end if
|
||||||
|
|
||||||
txtVictory:
|
txtVictory:
|
||||||
if lang eq ru_RU
|
if lang eq ru_RU
|
||||||
db '‚ë à¥è¨«¨ § ¤ çã! <20> ¦¬¨â¥->'
|
db '‚ë à¥è¨«¨ § ¤ çã! <20> ¦¬¨â¥->'
|
||||||
else if lang eq it_IT
|
else if lang eq it_IT
|
||||||
db 'Gioco completato! Premi ->'
|
db 'Gioco completato! Premi ->'
|
||||||
else if lang eq de_DE
|
else if lang eq de_DE
|
||||||
db 'Spiel beendet! Druecken sie auf ->'
|
db 'Spiel beendet! Druecken sie auf ->'
|
||||||
else
|
else ; Default to en_US
|
||||||
db 'Puzzle completed! Press->'
|
db 'Puzzle completed! Press->'
|
||||||
end if
|
end if
|
||||||
lenVictory:
|
lenVictory:
|
||||||
|
|
||||||
arrow equ lenVictory-2
|
arrow equ lenVictory-2
|
||||||
|
|
||||||
I_END: ; ª®¥æ ¯à®£à ¬¬ë
|
I_END: ; ª®¥æ ¯à®£à ¬¬ë
|
||||||
;null db ?
|
;null db ?
|
||||||
move_count dw ?
|
move_count dw ?
|
||||||
cptr db ?
|
cptr db ?
|
||||||
sts dw ?
|
sts dw ?
|
||||||
sh_off db ?
|
sh_off db ?
|
||||||
task dd ?
|
task dd ?
|
||||||
generator dd ?
|
generator dd ?
|
||||||
curconf:
|
curconf:
|
||||||
|
@ -1,93 +1,97 @@
|
|||||||
include 'lang.inc'
|
include 'lang.inc' ; Language support for locales: ru_RU (CP866), en_US.
|
||||||
|
|
||||||
struc langstr [lng, data]
|
; FIXME:
|
||||||
{
|
; This translation mechanism should fallback to en_US if the language
|
||||||
if lang eq lng
|
; is unlisted (e.g. es_ES). Either fix the macros or use a different method.
|
||||||
sz ., data
|
; The problem doesn't manifest, as we only bundle Dungeons in the RU distro.
|
||||||
end if
|
struc langstr [lng, data]
|
||||||
}
|
{
|
||||||
|
if lang eq lng
|
||||||
struc langstr0 [lng, data]
|
sz ., data
|
||||||
{
|
end if
|
||||||
if lang eq lng
|
}
|
||||||
sz0 ., data
|
|
||||||
end if
|
struc langstr0 [lng, data]
|
||||||
}
|
{
|
||||||
|
if lang eq lng
|
||||||
include 'AKODE/data.inc'
|
sz0 ., data
|
||||||
include 'Resources/Textures/textures.inc'
|
end if
|
||||||
include 'Resources/Levels/levels.inc'
|
}
|
||||||
|
|
||||||
FULLSCREEN = 0
|
include 'AKODE/data.inc'
|
||||||
FSAA = 0
|
include 'Resources/Textures/textures.inc'
|
||||||
DISABLE_SHADING = 0
|
include 'Resources/Levels/levels.inc'
|
||||||
|
|
||||||
MOVEMENT_SPEED = BLOCK_BASE_SIZE + BLOCK_BASE_SIZE / 4
|
FULLSCREEN = 0
|
||||||
|
FSAA = 0
|
||||||
FIELD_OF_VIEW = 60
|
DISABLE_SHADING = 0
|
||||||
BLOCK_BASE_SIZE = 512
|
|
||||||
BLOCK_HEIGHT = 512
|
MOVEMENT_SPEED = BLOCK_BASE_SIZE + BLOCK_BASE_SIZE / 4
|
||||||
|
|
||||||
INVENTORY_SIZE = 10
|
FIELD_OF_VIEW = 60
|
||||||
|
BLOCK_BASE_SIZE = 512
|
||||||
HUD_PANEL_HEIGHT = 120
|
BLOCK_HEIGHT = 512
|
||||||
|
|
||||||
INVENTORY_X = 570
|
INVENTORY_SIZE = 10
|
||||||
INVENTORY_Y = 15
|
|
||||||
INVENTORY_PADDING_X = 10
|
HUD_PANEL_HEIGHT = 120
|
||||||
INVENTORY_PADDING_Y = 10
|
|
||||||
OBJECT_IMAGE_WIDTH = 40
|
INVENTORY_X = 570
|
||||||
OBJECT_IMAGE_HEIGHT = 40
|
INVENTORY_Y = 15
|
||||||
|
INVENTORY_PADDING_X = 10
|
||||||
GAME_MESSAGE_X = 150 + 15
|
INVENTORY_PADDING_Y = 10
|
||||||
GAME_MESSAGE_Y = 15 + 15
|
OBJECT_IMAGE_WIDTH = 40
|
||||||
GAME_MESSAGE_COLOR = 0E4E2ADh
|
OBJECT_IMAGE_HEIGHT = 40
|
||||||
|
|
||||||
if FULLSCREEN
|
GAME_MESSAGE_X = 150 + 15
|
||||||
;MAIN_WINDOW_X = 0
|
GAME_MESSAGE_Y = 15 + 15
|
||||||
;MAIN_WINDOW_Y = 0
|
GAME_MESSAGE_COLOR = 0E4E2ADh
|
||||||
;MAIN_WINDOW_WIDTH = 0FFFFh
|
|
||||||
;MAIN_WINDOW_HEIGHT = 0FFFFh
|
if FULLSCREEN
|
||||||
MAIN_WINDOW_STYLE = (01000001b) shl 24
|
;MAIN_WINDOW_X = 0
|
||||||
MAIN_WINDOW_STYLE2 = 1 shl 24
|
;MAIN_WINDOW_Y = 0
|
||||||
else
|
;MAIN_WINDOW_WIDTH = 0FFFFh
|
||||||
MAIN_WINDOW_X = 20
|
;MAIN_WINDOW_HEIGHT = 0FFFFh
|
||||||
MAIN_WINDOW_Y = 20
|
MAIN_WINDOW_STYLE = (01000001b) shl 24
|
||||||
MAIN_WINDOW_WIDTH = 960 ; client area width
|
MAIN_WINDOW_STYLE2 = 1 shl 24
|
||||||
MAIN_WINDOW_HEIGHT = 712 ; client area height
|
else
|
||||||
MAIN_WINDOW_STYLE = (01110100b) shl 24
|
MAIN_WINDOW_X = 20
|
||||||
MAIN_WINDOW_STYLE2 = 0
|
MAIN_WINDOW_Y = 20
|
||||||
end if
|
MAIN_WINDOW_WIDTH = 960 ; client area width
|
||||||
|
MAIN_WINDOW_HEIGHT = 712 ; client area height
|
||||||
MAIN_EVENT_MASK = EVM_REDRAW or EVM_KEY or EVM_BUTTON or EVM_MOUSE or EVM_MOUSE_FILTER
|
MAIN_WINDOW_STYLE = (01110100b) shl 24
|
||||||
|
MAIN_WINDOW_STYLE2 = 0
|
||||||
MAIN_WINDOW_TITLE langstr0 \
|
end if
|
||||||
en_US, 'Dungeons of Augastes 0.1', \
|
|
||||||
ru_RU, '<27>®¤§¥¬¥«ìï €ã£ áâ¥á 0.1'
|
MAIN_EVENT_MASK = EVM_REDRAW or EVM_KEY or EVM_BUTTON or EVM_MOUSE or EVM_MOUSE_FILTER
|
||||||
|
|
||||||
LevelLoadingImageFile db 'Resources/Textures/HUD/LevelLoading.png', 0
|
MAIN_WINDOW_TITLE langstr0 \
|
||||||
HudPanelImageFile db 'Resources/Textures/HUD/Panel.png', 0
|
en_US, 'Dungeons of Augastes 0.1', \
|
||||||
DeathImageFile db 'Resources/Textures/HUD/Death.png', 0
|
ru_RU, '<27>®¤§¥¬¥«ìï €ã£ áâ¥á 0.1'
|
||||||
EndImageFile db 'Resources/Textures/HUD/End.png', 0
|
|
||||||
|
LevelLoadingImageFile db 'Resources/Textures/HUD/LevelLoading.png', 0
|
||||||
align 4
|
HudPanelImageFile db 'Resources/Textures/HUD/Panel.png', 0
|
||||||
LevelLoadingImagePtr dd 0
|
DeathImageFile db 'Resources/Textures/HUD/Death.png', 0
|
||||||
HudPanelImagePtr dd 0
|
EndImageFile db 'Resources/Textures/HUD/End.png', 0
|
||||||
DeathImagePtr dd 0
|
|
||||||
EndImagePtr dd 0
|
align 4
|
||||||
|
LevelLoadingImagePtr dd 0
|
||||||
ImageBufferPtr dd 0
|
HudPanelImagePtr dd 0
|
||||||
|
DeathImagePtr dd 0
|
||||||
HudPanelNeedsRedraw dd 0
|
EndImagePtr dd 0
|
||||||
|
|
||||||
GameMessage dd 0
|
ImageBufferPtr dd 0
|
||||||
GameStatus dd 0
|
|
||||||
|
HudPanelNeedsRedraw dd 0
|
||||||
GAME_STATUS.LEVEL_LOAD_FAILED = 1
|
|
||||||
GAME_STATUS.DEAD = 2
|
GameMessage dd 0
|
||||||
GAME_STATUS.END = 3
|
GameStatus dd 0
|
||||||
|
|
||||||
ACTION.DO_SOMETHING = AKODE_ACTION.CUSTOM + 1
|
GAME_STATUS.LEVEL_LOAD_FAILED = 1
|
||||||
ACTION.LOOK_AROUND = AKODE_ACTION.CUSTOM + 2
|
GAME_STATUS.DEAD = 2
|
||||||
ACTION.USE_OBJECT = AKODE_ACTION.CUSTOM + 3
|
GAME_STATUS.END = 3
|
||||||
ACTION.LOOK_AT_OBJECT = AKODE_ACTION.CUSTOM + 4
|
|
||||||
|
ACTION.DO_SOMETHING = AKODE_ACTION.CUSTOM + 1
|
||||||
|
ACTION.LOOK_AROUND = AKODE_ACTION.CUSTOM + 2
|
||||||
|
ACTION.USE_OBJECT = AKODE_ACTION.CUSTOM + 3
|
||||||
|
ACTION.LOOK_AT_OBJECT = AKODE_ACTION.CUSTOM + 4
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
; contact: 4nic8@casiocalc.org
|
; contact: 4nic8@casiocalc.org
|
||||||
;----------------------------------------
|
;----------------------------------------
|
||||||
|
|
||||||
include 'lang.inc'
|
include 'lang.inc' ; Language support for locales: it_IT, en_US.
|
||||||
include '../../../macros.inc'
|
include '../../../macros.inc'
|
||||||
include 'ascl.inc'
|
include 'ascl.inc'
|
||||||
include 'ascgl.inc'
|
include 'ascgl.inc'
|
||||||
@ -142,7 +142,7 @@ still:
|
|||||||
; *********************************************
|
; *********************************************
|
||||||
|
|
||||||
show_screen: ; flips the virtual screen to the window
|
show_screen: ; flips the virtual screen to the window
|
||||||
push_abc
|
push_abc
|
||||||
mcall 7, screen, <X_SIZE, Y_SIZE>, 0
|
mcall 7, screen, <X_SIZE, Y_SIZE>, 0
|
||||||
pop_abc
|
pop_abc
|
||||||
ret
|
ret
|
||||||
@ -389,7 +389,7 @@ grad_fill_screen: ; eax - screen color ( 0x00RRGGBB ), ebx - mack
|
|||||||
.no_ch:
|
.no_ch:
|
||||||
pop ecx
|
pop ecx
|
||||||
loop .lab1
|
loop .lab1
|
||||||
|
|
||||||
pop_abc
|
pop_abc
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@ -409,7 +409,7 @@ intro: ; INTRO ;
|
|||||||
jne @f
|
jne @f
|
||||||
ret
|
ret
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
mcall 4,<115,150>,0x82050505,VERSION
|
mcall 4,<115,150>,0x82050505,VERSION
|
||||||
mcall ,<125,180>,0x80050505,AUTHOR
|
mcall ,<125,180>,0x80050505,AUTHOR
|
||||||
mcall ,<90,210>,0x81EE0800,PRESS_SPACE
|
mcall ,<90,210>,0x81EE0800,PRESS_SPACE
|
||||||
@ -468,13 +468,13 @@ fast_gfx:
|
|||||||
mov ebx,0xFFFF
|
mov ebx,0xFFFF
|
||||||
.g_ok:
|
.g_ok:
|
||||||
call grad_fill_screen
|
call grad_fill_screen
|
||||||
|
|
||||||
;black_bg
|
;black_bg
|
||||||
;mov eax,0
|
;mov eax,0
|
||||||
;mov ebx,0
|
;mov ebx,0
|
||||||
;call fill_screen
|
;call fill_screen
|
||||||
|
|
||||||
|
|
||||||
mov eax,37 ; get mouse position
|
mov eax,37 ; get mouse position
|
||||||
mov ebx,1
|
mov ebx,1
|
||||||
mcall
|
mcall
|
||||||
@ -805,7 +805,7 @@ draw_window:
|
|||||||
mcall 48,4
|
mcall 48,4
|
||||||
lea ecx, [100*65536+Y_SIZE+4+eax]; [y start] *65536 + [y size] + [skin_height]
|
lea ecx, [100*65536+Y_SIZE+4+eax]; [y start] *65536 + [y size] + [skin_height]
|
||||||
mcall 0,<100,X_SIZE+9>,,0x74ffffff,,0
|
mcall 0,<100,X_SIZE+9>,,0x74ffffff,,0
|
||||||
|
|
||||||
mov eax, [lives]
|
mov eax, [lives]
|
||||||
add eax, '0'
|
add eax, '0'
|
||||||
mov esi, HEADER
|
mov esi, HEADER
|
||||||
@ -836,7 +836,7 @@ if lang eq it_IT
|
|||||||
THANKS_FOR_PLAYING db 'Grazie per aver giocato', 0
|
THANKS_FOR_PLAYING db 'Grazie per aver giocato', 0
|
||||||
PRESS_SPACE db 'Premi spazio per iniziare',0
|
PRESS_SPACE db 'Premi spazio per iniziare',0
|
||||||
LEVEL db 'LIVELLO',0
|
LEVEL db 'LIVELLO',0
|
||||||
else
|
else ; Default to en_US
|
||||||
THANKS_FOR_PLAYING db 'Thanks for playing', 0
|
THANKS_FOR_PLAYING db 'Thanks for playing', 0
|
||||||
PRESS_SPACE db 'press SPACE to start',0
|
PRESS_SPACE db 'press SPACE to start',0
|
||||||
LEVEL db 'LEVEL',0
|
LEVEL db 'LEVEL',0
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
;******************************************************************************
|
;******************************************************************************
|
||||||
|
|
||||||
include 'lang.inc'
|
include 'lang.inc' ; Language support for locales: it_IT, en_US.
|
||||||
include '..\..\..\macros.inc'
|
include '..\..\..\macros.inc'
|
||||||
include 'ascl.inc'
|
include 'ascl.inc'
|
||||||
include 'ascgl.inc'
|
include 'ascgl.inc'
|
||||||
@ -285,7 +285,7 @@ end_col:
|
|||||||
cmp [delay_cnt],0
|
cmp [delay_cnt],0
|
||||||
jne no_delay
|
jne no_delay
|
||||||
mov [delay_cnt],1
|
mov [delay_cnt],1
|
||||||
delay 1 ;don't generate delay for fast speed programm
|
delay 1 ; don't generate delay for fast speed program
|
||||||
no_delay:
|
no_delay:
|
||||||
dec [delay_cnt]
|
dec [delay_cnt]
|
||||||
|
|
||||||
@ -297,9 +297,9 @@ win_test:
|
|||||||
mov [againbut],1
|
mov [againbut],1
|
||||||
call draw_window
|
call draw_window
|
||||||
; label 160,200,'You Win!',cl_Green+font_Big
|
; label 160,200,'You Win!',cl_Green+font_Big
|
||||||
; label 130,220,'Youre Score:',cl_Green+font_Big
|
; label 130,220,'Your Score:',cl_Green+font_Big
|
||||||
; outcount dword [scorea],230,220,cl_Green,5*65536
|
; outcount dword [scorea],230,220,cl_Green,5*65536
|
||||||
; label 130,234,'Youre Lives:',cl_Green+font_Big
|
; label 130,234,'Your Lives:',cl_Green+font_Big
|
||||||
; outcount dword [scoreb],230,234,cl_Green,5*65536
|
; outcount dword [scoreb],230,234,cl_Green,5*65536
|
||||||
; delay 600 ;wait 2sec
|
; delay 600 ;wait 2sec
|
||||||
; close ;exit from program
|
; close ;exit from program
|
||||||
@ -310,7 +310,7 @@ lose_test:
|
|||||||
jne stl2
|
jne stl2
|
||||||
; call draw_window
|
; call draw_window
|
||||||
; label 160,200,'You Lose!',cl_Red+font_Big
|
; label 160,200,'You Lose!',cl_Red+font_Big
|
||||||
; label 130,220,'Youre Score:',cl_Red+font_Big
|
; label 130,220,'Your Score:',cl_Red+font_Big
|
||||||
; outcount dword [scorea],230,220,cl_Red,5*65536
|
; outcount dword [scorea],230,220,cl_Red,5*65536
|
||||||
; delay 300 ;wait 2sec
|
; delay 300 ;wait 2sec
|
||||||
; close ;exit from program
|
; close ;exit from program
|
||||||
@ -420,7 +420,7 @@ draw_window:
|
|||||||
window 0,0,400+8,480+24,window_Skinned
|
window 0,0,400+8,480+24,window_Skinned
|
||||||
if lang eq it_IT
|
if lang eq it_IT
|
||||||
label 12,8,'ARCANOID: Usa le freccie Vite Punti',cl_White+font_Big
|
label 12,8,'ARCANOID: Usa le freccie Vite Punti',cl_White+font_Big
|
||||||
else
|
else ; Default to en_US
|
||||||
label 12,8,'ARCANOID: USE ARROW KEYS LIVES SCORE',cl_White+font_Big
|
label 12,8,'ARCANOID: USE ARROW KEYS LIVES SCORE',cl_White+font_Big
|
||||||
end if
|
end if
|
||||||
|
|
||||||
@ -433,9 +433,9 @@ draw_window:
|
|||||||
if lang eq it_IT
|
if lang eq it_IT
|
||||||
label 160,200,'Hai perso!',cl_Red+font_Big
|
label 160,200,'Hai perso!',cl_Red+font_Big
|
||||||
label 130,220,'Punteggio:',cl_Red+font_Big
|
label 130,220,'Punteggio:',cl_Red+font_Big
|
||||||
else
|
else ; Default to en_US
|
||||||
label 160,200,'You Lose!',cl_Red+font_Big
|
label 160,200,'You Lose!',cl_Red+font_Big
|
||||||
label 130,220,'Youre Score:',cl_Red+font_Big
|
label 130,220,'Your Score:',cl_Red+font_Big
|
||||||
end if
|
end if
|
||||||
outcount dword [scorea],230,220,cl_Red,5*65536
|
outcount dword [scorea],230,220,cl_Red,5*65536
|
||||||
mov ebx,150*65536+80
|
mov ebx,150*65536+80
|
||||||
@ -449,7 +449,7 @@ draw_window:
|
|||||||
mcall
|
mcall
|
||||||
if lang eq it_IT
|
if lang eq it_IT
|
||||||
label 152,244,'Rigioca',cl_Red+font_Big
|
label 152,244,'Rigioca',cl_Red+font_Big
|
||||||
else
|
else ; Default to en_US
|
||||||
label 152,244,'Play again?',cl_Red+font_Big
|
label 152,244,'Play again?',cl_Red+font_Big
|
||||||
end if
|
end if
|
||||||
jmp elev
|
jmp elev
|
||||||
@ -457,9 +457,9 @@ nlev:
|
|||||||
if lang eq it_IT
|
if lang eq it_IT
|
||||||
label 160,200,'Hai vinto!',cl_Green+font_Big
|
label 160,200,'Hai vinto!',cl_Green+font_Big
|
||||||
label 130,220,'Punteggio:',cl_Green+font_Big
|
label 130,220,'Punteggio:',cl_Green+font_Big
|
||||||
else
|
else ; Default to en_US
|
||||||
label 160,200,'You Win!',cl_Green+font_Big
|
label 160,200,'You Win!',cl_Green+font_Big
|
||||||
label 130,220,'Youre Score:',cl_Green+font_Big
|
label 130,220,'Your Score:',cl_Green+font_Big
|
||||||
end if
|
end if
|
||||||
outcount dword [scorea],230,220,cl_Green,5*65536
|
outcount dword [scorea],230,220,cl_Green,5*65536
|
||||||
mov ebx,150*65536+120 ;mov ebx,150*65536+80
|
mov ebx,150*65536+120 ;mov ebx,150*65536+80
|
||||||
@ -473,13 +473,13 @@ nlev:
|
|||||||
mcall
|
mcall
|
||||||
if lang eq it_IT
|
if lang eq it_IT
|
||||||
label 152,244,'Prossimo Livello',cl_Red+font_Big
|
label 152,244,'Prossimo Livello',cl_Red+font_Big
|
||||||
else
|
else ; Default to en_US
|
||||||
label 152,244,'Next level?',cl_Red+font_Big
|
label 152,244,'Next level?',cl_Red+font_Big
|
||||||
end if
|
end if
|
||||||
elev:
|
elev:
|
||||||
if lang eq it_IT
|
if lang eq it_IT
|
||||||
label 178,264,'Esci',cl_Red+font_Big
|
label 178,264,'Esci',cl_Red+font_Big
|
||||||
else
|
else ; Default to en_US
|
||||||
label 178,264,'Exit?',cl_Red+font_Big
|
label 178,264,'Exit?',cl_Red+font_Big
|
||||||
end if
|
end if
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,17 +1,17 @@
|
|||||||
_window_caption db 'Soft landing',0 ;çàãîëîâîê ïðèëîæåíèÿ
|
_window_caption db 'Soft landing',0 ; Application title
|
||||||
|
|
||||||
_text_game_over db 'G A M E O V E R', 0
|
_text_game_over db 'G A M E O V E R', 0
|
||||||
_text_level_complete db 'L E V E L C O M P L E T E', 0
|
_text_level_complete db 'L E V E L C O M P L E T E', 0
|
||||||
_text_intro_title db ' S O F T L A N D I N G', 0
|
_text_intro_title db ' S O F T L A N D I N G', 0
|
||||||
_text_intro_description1 db 'Provide a soft landing, clearing the runway from the city buildings', 0
|
_text_intro_description1 db 'Provide a soft landing, clearing the runway from the city buildings', 0
|
||||||
|
|
||||||
_text_intro_key_controls db ' Control keys:', 0
|
_text_intro_key_controls db ' Control keys:', 0
|
||||||
_text_intro_key_ctrl db ' CTRL - drop a bomb', 0
|
_text_intro_key_ctrl db ' CTRL - drop a bomb', 0
|
||||||
_text_intro_key_space db 'SPACE - do a barrel roll', 0
|
_text_intro_key_space db 'SPACE - do a barrel roll', 0
|
||||||
_text_intro_select_level db ' Use UP and DOWN arrow keys for select game level:', 0
|
_text_intro_select_level db ' Use UP and DOWN arrow keys to select the game level:', 0
|
||||||
_text_intro_level_num db ' LEVEL', 0
|
_text_intro_level_num db ' LEVEL', 0
|
||||||
_text_intro_set_volume db ' Use LEFT and RIGHT arrow keys for setting volume:', 0
|
_text_intro_set_volume db ' Use LEFT and RIGHT arrow keys for setting volume:', 0
|
||||||
_text_intro_volume_num db 'VOLUME', 0
|
_text_intro_volume_num db 'VOLUME', 0
|
||||||
|
|
||||||
_text_intro_start_space db 'Press SPACE for start game', 0
|
_text_intro_start_space db 'Press SPACE for start game', 0
|
||||||
_text_intro_exit_key db 'Esc - exit', 0
|
_text_intro_exit_key db 'Esc - exit', 0
|
Loading…
Reference in New Issue
Block a user