mirror of
https://github.com/claunia/marechai.git
synced 2025-12-16 19:14:25 +00:00
Add translation for all machine view fields.
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Marechai/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Portillo/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=SIMD/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=videogame/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
|
||||
@@ -2,7 +2,7 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp3.1</TargetFramework>
|
||||
<Version>3.0.99.971</Version>
|
||||
<Version>3.0.99.973</Version>
|
||||
<Company>Canary Islands Computer Museum</Company>
|
||||
<Copyright>Copyright © 2003-2020 Natalia Portillo</Copyright>
|
||||
<Product>Canary Islands Computer Museum Website</Product>
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
}
|
||||
|
||||
@page "/machine/{Id:int}"
|
||||
|
||||
@using Marechai.Database
|
||||
@inherits OwningComponentBase<MachinesService>
|
||||
@inject IStringLocalizer<MachinesService> L
|
||||
@@ -73,7 +72,7 @@
|
||||
_machine.Introduced.Value.Year == 1000)
|
||||
{
|
||||
<b>
|
||||
<div style="text-align: center;">PROTOTYPE</div>
|
||||
<div style="text-align: center;">@L["PROTOTYPE"]</div>
|
||||
</b>
|
||||
}
|
||||
<b>
|
||||
@@ -87,7 +86,7 @@
|
||||
<tr>
|
||||
<th scope=row width="37%">
|
||||
<div align=right>
|
||||
Introduction date
|
||||
@L["Introduction date"]
|
||||
</div>
|
||||
</th>
|
||||
<td width="63%">
|
||||
@@ -101,7 +100,7 @@
|
||||
<tr>
|
||||
<th scope=row width="37%">
|
||||
<div align=right>
|
||||
Family
|
||||
@L["Family"]
|
||||
</div>
|
||||
</th>
|
||||
<td width="63%">
|
||||
@@ -115,7 +114,7 @@
|
||||
<tr>
|
||||
<th scope=row width="37%">
|
||||
<div align=right>
|
||||
Model
|
||||
@L["Model"]
|
||||
</div>
|
||||
</th>
|
||||
<td width="63%">
|
||||
@@ -128,7 +127,7 @@
|
||||
<tr>
|
||||
<th scope=row>
|
||||
<div align=right>
|
||||
Processors
|
||||
@L["Processors"]
|
||||
</div>
|
||||
</th>
|
||||
<td>
|
||||
@@ -140,14 +139,14 @@
|
||||
<td>
|
||||
@if (processor.Speed > 0)
|
||||
{
|
||||
@(processor.GprSize > 0 ? $"{processor.Name} @ {processor.Speed}Mhz ({processor.GprSize} bits)" : $"{processor.Name} @ {processor.Speed}Mhz")
|
||||
@(processor.GprSize > 0 ? string.Format(L["{0} @ {1}MHz ({2} bits)"], processor.Name, processor.Speed, processor.GprSize) : string.Format(L["{0} @ {1}MHz"], processor.Name, processor.Speed))
|
||||
}
|
||||
else
|
||||
{
|
||||
@($"{processor.Name}")
|
||||
}
|
||||
<a aria-controls="@($"cpuInfo{counter}")" aria-expanded="false" class="btn btn-link" data-toggle="collapse" href="@($"#cpuInfo{counter}")">
|
||||
+info
|
||||
@L["+info"]
|
||||
</a>
|
||||
<div class="collapse" id="@($"cpuInfo{counter}")">
|
||||
<div class="card card-body">
|
||||
@@ -156,12 +155,12 @@
|
||||
processor.ModelCode != processor.Name)
|
||||
{
|
||||
<tr>
|
||||
<td>Model</td>
|
||||
<td>@L["Model"]</td>
|
||||
<td>@processor.ModelCode</td>
|
||||
</tr>
|
||||
}
|
||||
<tr>
|
||||
<td>Manufacturer</td>
|
||||
<td>@L["Manufacturer"]</td>
|
||||
<td>
|
||||
<a href="/processors/company/@processor.CompanyId">
|
||||
@processor.CompanyName</a>
|
||||
@@ -170,22 +169,22 @@
|
||||
@if (processor.Introduced != null)
|
||||
{
|
||||
<tr>
|
||||
<td>Introduction date</td>
|
||||
<td>@L["Introduction date"]</td>
|
||||
<td>@($"{processor.Introduced:yyyy}")</td>
|
||||
</tr>
|
||||
}
|
||||
@if (processor.InstructionSet != null)
|
||||
{
|
||||
<tr>
|
||||
<td>Instruction set</td>
|
||||
<td>@L["Instruction set"]</td>
|
||||
<td>@processor.InstructionSet</td>
|
||||
</tr>
|
||||
}
|
||||
@if (processor.Speed > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Nominal speed</td>
|
||||
<td>@processor.Speed MHz</td>
|
||||
<td>@L["Nominal speed"]</td>
|
||||
<td>@string.Format(L["{0} MHz"], processor.Speed)</td>
|
||||
</tr>
|
||||
}
|
||||
@if (processor.Gprs > 0 ||
|
||||
@@ -200,16 +199,30 @@
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@processor.Gprs general purpose registers of @processor.GprSize bits
|
||||
@if (processor.FprSize > 0 &&
|
||||
processor.Fprs == 0)
|
||||
{
|
||||
@($", that can be used as floating point registers of {processor.FprSize}")
|
||||
}
|
||||
@if (processor.SimdSize > 0 &&
|
||||
processor.Fprs == 0 &&
|
||||
processor.SimdSize > 0 &&
|
||||
processor.SimdRegisters == 0)
|
||||
{
|
||||
@($", that can be used as SIMD registers of {processor.FprSize}")
|
||||
@(string.Format(L["{0} general purpose registers of {1} bits that can be used as floating point registers of {2} bits and SIMD registers of {3} bits."],
|
||||
processor.Gprs, processor.GprSize, processor.FprSize, processor.SimdSize))
|
||||
}
|
||||
else if (processor.FprSize > 0 &&
|
||||
processor.Fprs == 0)
|
||||
{
|
||||
@(string.Format(L["{0} general purpose registers of {1} bits that can be used as floating point registers of {2} bits."],
|
||||
processor.Gprs, processor.GprSize, processor.FprSize))
|
||||
}
|
||||
else if (processor.FprSize == 0 &&
|
||||
processor.SimdSize > 0 &&
|
||||
processor.SimdRegisters == 0)
|
||||
{
|
||||
@(string.Format(L["{0} general purpose registers of {1} bits that can be used as SIMD registers of {2} bits."],
|
||||
processor.Gprs, processor.GprSize, processor.SimdSize))
|
||||
}
|
||||
else
|
||||
{
|
||||
@(string.Format(L["{0} general purpose registers of {1} bits."], processor.Gprs, processor.GprSize))
|
||||
}
|
||||
</td>
|
||||
</tr>
|
||||
@@ -218,11 +231,16 @@
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@processor.Fprs floating-point registers of @processor.FprSize bits
|
||||
@if (processor.SimdSize > 0 &&
|
||||
processor.SimdRegisters == 0)
|
||||
{
|
||||
@($", that can be used as SIMD registers of {processor.FprSize}")
|
||||
@(string.Format(L["{0} floating point registers of {1} bits that can be used as SIMD registers of {2} bits."],
|
||||
processor.Fprs, processor.FprSize, processor.SimdSize))
|
||||
}
|
||||
else
|
||||
{
|
||||
@(string.Format(L["{0} floating point registers of {1} bits."],
|
||||
processor.Fprs, processor.FprSize))
|
||||
}
|
||||
</td>
|
||||
</tr>
|
||||
@@ -231,8 +249,9 @@
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@processor.SimdRegisters
|
||||
<abbr title="Single instruction, multiple data">SIMD</abbr>registers of @processor.SimdSize bits
|
||||
<abbr title="@L["Single instruction, multiple data"]">
|
||||
@string.Format(L["{0} SIMD registers of {1} bits."], processor.SimdRegisters, processor.SimdSize)
|
||||
</abbr>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -243,22 +262,18 @@
|
||||
@if (processor.Cores > 1)
|
||||
{
|
||||
<tr>
|
||||
<td>Multi-core</td>
|
||||
<td>@processor.Cores cores</td>
|
||||
<td>@L["Multi-core"]</td>
|
||||
<td>@string.Format(L["{0} cores."], processor.Cores)</td>
|
||||
</tr>
|
||||
}
|
||||
@if (processor.ThreadsPerCore > 1)
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
<abbr title="Simultaneous multithreading">SMT</abbr>
|
||||
<abbr title="@L["Simultaneous multithreading"]">SMT</abbr>
|
||||
</td>
|
||||
<td>
|
||||
@processor.ThreadsPerCore threads
|
||||
@if (processor.Cores > 1)
|
||||
{
|
||||
@(" per core")
|
||||
}
|
||||
@string.Format(processor.Cores > 1 ? L["{0} threads per core."] : L["{0} threads."], processor.ThreadsPerCore)
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -266,14 +281,14 @@
|
||||
processor.AddrBus > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Bus</td>
|
||||
<td>@L["Bus"]</td>
|
||||
<td>
|
||||
<table>
|
||||
@if (processor.DataBus > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@processor.DataBus-bit data
|
||||
@string.Format(L["{0}-bit data."], processor.DataBus)
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -281,7 +296,7 @@
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@processor.AddrBus-bit address
|
||||
@string.Format(L["{0}-bit address."], processor.AddrBus)
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -296,14 +311,14 @@
|
||||
processor.L2 > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Cache</td>
|
||||
<td>@L["Cache"]</td>
|
||||
<td>
|
||||
<table>
|
||||
@if (processor.L1Instruction > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@(processor.L1Data < 0 ? $"{processor.L1Instruction}KiB combined instruction-data L1" : $"{processor.L1Instruction}KiB instruction L1")
|
||||
@string.Format(processor.L1Data < 0 ? L["{0}KiB combined instruction-data L1"] : L["{0}KiB instruction L1"], processor.L1Instruction)
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -311,7 +326,7 @@
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@($"{processor.L1Data}KiB data L1")
|
||||
@string.Format(L["{0}KiB data L1"], processor.L1Data)
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -319,7 +334,7 @@
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@($"{processor.L2}KiB L2")
|
||||
@string.Format(L["{0}KiB L2"], processor.L2)
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -327,7 +342,7 @@
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@($"{processor.L3}KiB L3")
|
||||
@string.Format(L["{0}KiB L3"], processor.L3)
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -338,7 +353,7 @@
|
||||
@if (processor.Package != null)
|
||||
{
|
||||
<tr>
|
||||
<td>Package</td>
|
||||
<td>@L["Package"]</td>
|
||||
<td>@processor.Package</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -346,18 +361,30 @@
|
||||
processor.ProcessNm > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Manufacturing process</td>
|
||||
<td>@L["Manufacturing process"]</td>
|
||||
<td>
|
||||
@if (processor.Process != null &&
|
||||
processor.ProcessNm > 0)
|
||||
{
|
||||
@processor.Process
|
||||
@("@")
|
||||
@(processor.ProcessNm > 100 ? $"{processor.ProcessNm / 100}µm" : $"{processor.ProcessNm}nm")
|
||||
if (processor.ProcessNm > 100)
|
||||
{
|
||||
@(string.Format(L["{0} @ {1}µm"], processor.Process, processor.ProcessNm / 100))
|
||||
}
|
||||
else
|
||||
{
|
||||
@(string.Format(L["{0} @ {1}nm"], processor.Process, processor.ProcessNm))
|
||||
}
|
||||
}
|
||||
else if (processor.ProcessNm > 0)
|
||||
{
|
||||
@(processor.ProcessNm > 100 ? $"{processor.ProcessNm / 100}µm" : $"{processor.ProcessNm}nm")
|
||||
if (processor.ProcessNm > 100)
|
||||
{
|
||||
@(string.Format(L["{0}µm"], processor.ProcessNm / 100))
|
||||
}
|
||||
else
|
||||
{
|
||||
@(string.Format(L["{0}nm"], processor.ProcessNm))
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -369,14 +396,14 @@
|
||||
@if (processor.DieSize > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Die size</td>
|
||||
<td>@processor.DieSize mm²</td>
|
||||
<td>@L["Die size"]</td>
|
||||
<td>@string.Format(L["{0} mm²"], processor.DieSize)</td>
|
||||
</tr>
|
||||
}
|
||||
@if (processor.Transistors > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Transistors</td>
|
||||
<td>@L["Transistors"]</td>
|
||||
<td>@processor.Transistors</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -398,7 +425,7 @@
|
||||
<tr>
|
||||
<th scope=row>
|
||||
<div align=right>
|
||||
Memory
|
||||
@L["Memory"]
|
||||
</div>
|
||||
</th>
|
||||
<td>
|
||||
@@ -408,49 +435,49 @@
|
||||
string memValue;
|
||||
if (memory.Size > 1073741824)
|
||||
{
|
||||
memValue = $"{memory.Size / 1073741824} GiB";
|
||||
memValue = string.Format(L["{0} GiB"], memory.Size / 1073741824);
|
||||
}
|
||||
else if (memory.Size > 1048576)
|
||||
{
|
||||
memValue = $"{memory.Size / 1048576} MiB";
|
||||
memValue = string.Format(L["{0} MiB"], memory.Size / 1048576);
|
||||
}
|
||||
else if (memory.Size > 1024)
|
||||
{
|
||||
memValue = $"{memory.Size / 1024} KiB";
|
||||
memValue = string.Format(L["{0} KiB"], memory.Size / 1024);
|
||||
}
|
||||
else if (memory.Size > 0)
|
||||
{
|
||||
memValue = $"{memory.Size} bytes";
|
||||
memValue = string.Format(L["{0} bytes"], memory.Size);
|
||||
}
|
||||
else
|
||||
{
|
||||
memValue = "Unknown size";
|
||||
memValue = L["Unknown size"];
|
||||
}
|
||||
|
||||
string speedValue;
|
||||
if (memory.Speed > 1000000000)
|
||||
{
|
||||
speedValue = $"{memory.Speed / 1000000000} GHz";
|
||||
speedValue = string.Format(L["{0} GHz"], memory.Speed / 1000000000);
|
||||
}
|
||||
else if (memory.Speed > 1000000)
|
||||
{
|
||||
speedValue = $"{memory.Speed / 1000000} MHz";
|
||||
speedValue = string.Format(L["{0} MHz"], memory.Speed / 1000000);
|
||||
}
|
||||
else if (memory.Speed > 1000)
|
||||
{
|
||||
speedValue = $"{memory.Speed / 1000} KHz";
|
||||
speedValue = string.Format(L["{0} KHz"], memory.Speed / 1000);
|
||||
}
|
||||
else if (memory.Speed > 0)
|
||||
{
|
||||
speedValue = $"{memory.Speed} Hz";
|
||||
speedValue = string.Format(L["{0} Hz"], memory.Speed);
|
||||
}
|
||||
else
|
||||
{
|
||||
speedValue = "unknown speed";
|
||||
speedValue = L["unknown speed"];
|
||||
}
|
||||
|
||||
<tr>
|
||||
<td>@memValue of @memory.Usage memory (@memory.Type at @speedValue)</td>
|
||||
<td>@string.Format(L["{0} of {1} memory ({2} at {3})"], memValue, memory.Usage, memory.Type, speedValue)</td>
|
||||
</tr>
|
||||
}
|
||||
</table>
|
||||
@@ -462,7 +489,7 @@
|
||||
<tr>
|
||||
<th scope=row>
|
||||
<div align=right>
|
||||
Graphics processing units
|
||||
@L["Graphics processing units"]
|
||||
</div>
|
||||
</th>
|
||||
<td>
|
||||
@@ -473,14 +500,13 @@
|
||||
if (gpu.Id == -2)
|
||||
{
|
||||
<td>
|
||||
Framebuffer
|
||||
@L["Framebuffer"]
|
||||
<a aria-controls="@($"gpuInfo{counter}")" aria-expanded="false" class="btn btn-link" data-toggle="collapse" href="@($"#gpuInfo{counter}")">
|
||||
+info
|
||||
@L["+info"]
|
||||
</a>
|
||||
<div class="collapse" id="@($"gpuInfo{counter}")">
|
||||
<div class="card card-body">
|
||||
This computer directly draws pixels from software to a memory region that's converted to video output by a
|
||||
<abbr title="Digital to Analog Converter">DAC</abbr> or similar without using any specific graphics processing unit.
|
||||
@L["This machine directly draws pixels from software to a memory region that's converted to video output by a DAC or similar without using any specific graphics processing unit."]
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
@@ -490,7 +516,7 @@
|
||||
<td>
|
||||
@($"{gpu.Name}")
|
||||
<a aria-controls="@($"gpuInfo{counter}")" aria-expanded="false" class="btn btn-link" data-toggle="collapse" href="@($"#gpuInfo{counter}")">
|
||||
+info
|
||||
@L["+info"]
|
||||
</a>
|
||||
<div class="collapse" id="@($"gpuInfo{counter}")">
|
||||
<div class="card card-body">
|
||||
@@ -499,12 +525,12 @@
|
||||
gpu.ModelCode != gpu.Name)
|
||||
{
|
||||
<tr>
|
||||
<td>Model</td>
|
||||
<td>@L["Model"]</td>
|
||||
<td>@gpu.ModelCode</td>
|
||||
</tr>
|
||||
}
|
||||
<tr>
|
||||
<td>Manufacturer</td>
|
||||
<td>@L["Manufacturer"]</td>
|
||||
<td>
|
||||
<a href="/gpus/company/@gpu.CompanyId">
|
||||
@gpu.Company</a>
|
||||
@@ -513,14 +539,14 @@
|
||||
@if (gpu.Introduced != null)
|
||||
{
|
||||
<tr>
|
||||
<td>Introduction date</td>
|
||||
<td>@L["Introduction date"]</td>
|
||||
<td>@($"{gpu.Introduced:yyyy}")</td>
|
||||
</tr>
|
||||
}
|
||||
@if (gpu.Package != null)
|
||||
{
|
||||
<tr>
|
||||
<td>Package</td>
|
||||
<td>@L["Package"]</td>
|
||||
<td>@gpu.Package</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -528,18 +554,30 @@
|
||||
gpu.ProcessNm > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Manufacturing process</td>
|
||||
<td>@L["Manufacturing process"]</td>
|
||||
<td>
|
||||
@if (gpu.Process != null &&
|
||||
gpu.ProcessNm > 0)
|
||||
{
|
||||
@gpu.Process
|
||||
@("@")
|
||||
@(gpu.ProcessNm > 100 ? $"{gpu.ProcessNm / 100}µm" : $"{gpu.ProcessNm}nm")
|
||||
if (gpu.ProcessNm > 100)
|
||||
{
|
||||
@(string.Format(L["{0} @ {1}µm"], gpu.Process, gpu.ProcessNm / 100))
|
||||
}
|
||||
else
|
||||
{
|
||||
@(string.Format(L["{0} @ {1}nm"], gpu.Process, gpu.ProcessNm))
|
||||
}
|
||||
}
|
||||
else if (gpu.ProcessNm > 0)
|
||||
{
|
||||
@(gpu.ProcessNm > 100 ? $"{gpu.ProcessNm / 100}µm" : $"{gpu.ProcessNm}nm")
|
||||
if (gpu.ProcessNm > 100)
|
||||
{
|
||||
@(string.Format(L["{0}µm"], gpu.ProcessNm / 100))
|
||||
}
|
||||
else
|
||||
{
|
||||
@(string.Format(L["{0}nm"], gpu.ProcessNm))
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -551,14 +589,14 @@
|
||||
@if (gpu.DieSize > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Die size</td>
|
||||
<td>@gpu.DieSize mm²</td>
|
||||
<td>@L["Die size"]</td>
|
||||
<td>@string.Format(L["{0} mm²"], gpu.DieSize)</td>
|
||||
</tr>
|
||||
}
|
||||
@if (gpu.Transistors > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Transistors</td>
|
||||
<td>@L["Transistors"]</td>
|
||||
<td>@gpu.Transistors</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -578,7 +616,7 @@
|
||||
<tr>
|
||||
<th scope=row>
|
||||
<div align=right>
|
||||
Sound synthetizers
|
||||
@L["Sound synthetizers"]
|
||||
</div>
|
||||
</th>
|
||||
<td>
|
||||
@@ -590,14 +628,13 @@
|
||||
@if (sound.Id == -2)
|
||||
{
|
||||
<td>
|
||||
Software
|
||||
@L["Software"]
|
||||
<a aria-controls="@($"synthInfo{counter}")" aria-expanded="false" class="btn btn-link" data-toggle="collapse" href="@($"#synthInfo{counter}")">
|
||||
+info
|
||||
@L["+info"]
|
||||
</a>
|
||||
<div class="collapse" id="@($"synthInfo{counter}")">
|
||||
<div class="card card-body">
|
||||
This computer directly sends data to a
|
||||
<abbr title="Digital to Analog Converter">DAC</abbr> or similar connected to the audio output.
|
||||
@L["This machine directly sends data to a DAC or similar connected to the audio output."]
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
@@ -607,7 +644,7 @@
|
||||
<td>
|
||||
@($"{sound.Name}")
|
||||
<a aria-controls="@($"synthInfo{counter}")" aria-expanded="false" class="btn btn-link" data-toggle="collapse" href="@($"#synthInfo{counter}")">
|
||||
+info
|
||||
@L["+info"]
|
||||
</a>
|
||||
<div class="collapse" id="@($"synthInfo{counter}")">
|
||||
<div class="card card-body">
|
||||
@@ -616,14 +653,14 @@
|
||||
sound.ModelCode != sound.Name)
|
||||
{
|
||||
<tr>
|
||||
<td>Model</td>
|
||||
<td>@L["Model"]</td>
|
||||
<td>@sound.ModelCode</td>
|
||||
</tr>
|
||||
}
|
||||
@if (sound.CompanyId != null)
|
||||
{
|
||||
<tr>
|
||||
<td>Manufacturer</td>
|
||||
<td>@L["Manufacturer"]</td>
|
||||
<td>
|
||||
<a href="/soundsynths/company/@sound.CompanyId">
|
||||
@sound.CompanyName</a>
|
||||
@@ -633,7 +670,7 @@
|
||||
@if (sound.Introduced != null)
|
||||
{
|
||||
<tr>
|
||||
<td>Introduction date</td>
|
||||
<td>@L["Introduction date"]</td>
|
||||
<td>@($"{sound.Introduced:yyyy}")</td>
|
||||
</tr>
|
||||
}
|
||||
@@ -642,25 +679,25 @@
|
||||
sound.WhiteNoise != 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Generators</td>
|
||||
<td>@L["Generators"]</td>
|
||||
<td>
|
||||
<table>
|
||||
@if (sound.Voices != 0)
|
||||
{
|
||||
<tr>
|
||||
<td>@sound.Voices voices</td>
|
||||
<td>@string.Format(L["{0} voices"], sound.Voices)</td>
|
||||
</tr>
|
||||
}
|
||||
@if (sound.SquareWave != 0)
|
||||
{
|
||||
<tr>
|
||||
<td>@sound.SquareWave square wave</td>
|
||||
<td>@string.Format(L["{0} square wave"], sound.SquareWave)</td>
|
||||
</tr>
|
||||
}
|
||||
@if (sound.WhiteNoise != 0)
|
||||
{
|
||||
<tr>
|
||||
<td>@sound.WhiteNoise white noise</td>
|
||||
<td>@string.Format(L["{0} white noise"], sound.WhiteNoise)</td>
|
||||
</tr>
|
||||
}
|
||||
</table>
|
||||
@@ -671,26 +708,44 @@
|
||||
sound.Frequency > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Sample rate</td>
|
||||
<td>@L["Sample rate"]</td>
|
||||
<td>
|
||||
<table>
|
||||
@if (sound.Depth != 0 &&
|
||||
sound.Frequency > 0)
|
||||
{
|
||||
<tr>
|
||||
<td>@sound.Depth bits at @(sound.Frequency > 1000 ? $"{sound.Frequency / 1000}KHz" : $"{sound.Frequency}Hz")</td>
|
||||
<td>
|
||||
@if (sound.Frequency > 1000)
|
||||
{
|
||||
@string.Format(L["{0} bits at {1} KHz"], sound.Depth, sound.Frequency / 1000)
|
||||
}
|
||||
else
|
||||
{
|
||||
@string.Format(L["{0} bits at {1} Hz"], sound.Depth, sound.Frequency)
|
||||
}
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
else if (sound.Depth != 0)
|
||||
{
|
||||
<tr>
|
||||
<td>@sound.Depth bits</td>
|
||||
<td>@string.Format(L["{0} bits"], sound.Depth)</td>
|
||||
</tr>
|
||||
}
|
||||
else
|
||||
{
|
||||
<tr>
|
||||
<td>@(sound.Frequency > 1000 ? $"{sound.Frequency / 1000}KHz" : $"{sound.Frequency}Hz")</td>
|
||||
<td>
|
||||
@if (sound.Frequency > 1000)
|
||||
{
|
||||
@string.Format(L["{0} KHz"], sound.Frequency / 1000)
|
||||
}
|
||||
else
|
||||
{
|
||||
@string.Format(L["{0} Hz"], sound.Frequency)
|
||||
}
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
</table>
|
||||
@@ -700,7 +755,7 @@
|
||||
@if (sound.Type != 0)
|
||||
{
|
||||
<tr>
|
||||
<td>Synthetizer type</td>
|
||||
<td>@L["Synthesizer type"]</td>
|
||||
<td>
|
||||
@sound.Type
|
||||
</td>
|
||||
@@ -723,7 +778,7 @@
|
||||
<tr>
|
||||
<th scope=row>
|
||||
<div align=right>
|
||||
Storage
|
||||
@L["Storage"]
|
||||
</div>
|
||||
</th>
|
||||
<td>
|
||||
@@ -736,25 +791,25 @@
|
||||
{
|
||||
if (storage.Type == StorageType.CompactCassette)
|
||||
{
|
||||
capString = $"{storage.Capacity} bps";
|
||||
capString = string.Format(L["{0} bps"], storage.Capacity);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (storage.Capacity > 1073741824)
|
||||
{
|
||||
capString = $"{storage.Capacity / 1073741824} GiB";
|
||||
capString = string.Format(L["{0} GiB"], storage.Capacity / 1073741824);
|
||||
}
|
||||
else if (storage.Capacity > 1048576)
|
||||
{
|
||||
capString = $"{storage.Capacity / 1048576} MiB";
|
||||
capString = string.Format(L["{0} MiB"], storage.Capacity / 1048576);
|
||||
}
|
||||
else if (storage.Capacity > 1024)
|
||||
{
|
||||
capString = $"{storage.Capacity / 1024} KiB";
|
||||
capString = string.Format(L["{0} KiB"], storage.Capacity / 1024);
|
||||
}
|
||||
else if (storage.Capacity > 0)
|
||||
{
|
||||
capString = $"{storage.Capacity} bytes";
|
||||
capString = string.Format(L["{0} bytes"], storage.Capacity);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -768,17 +823,17 @@
|
||||
{
|
||||
if (storage.Type == StorageType.Empty)
|
||||
{
|
||||
<td>Available @storage.Interface interface.</td>
|
||||
<td>@string.Format(L["Available {0} interface."], storage.Interface)</td>
|
||||
}
|
||||
else
|
||||
{
|
||||
if (capString != null)
|
||||
{
|
||||
<td>@storage.Type connected thru a @storage.Interface interface with a nominal capacity of @capString</td>
|
||||
<td>@string.Format(L["{0} connected thru a {1} interface with a nominal capacity of {2}"], storage.Type, storage.Interface, capString)</td>
|
||||
}
|
||||
else
|
||||
{
|
||||
<td>@storage.Type connected thru a @storage.Interface interface</td>
|
||||
<td>@string.Format(L["{0} connected thru a {1} interface"], storage.Type, storage.Interface)</td>
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -786,7 +841,7 @@
|
||||
{
|
||||
if (capString != null)
|
||||
{
|
||||
<td>@storage.Type with a nominal capacity of @capString</td>
|
||||
<td>@string.Format(L["{0} with a nominal capacity of {1}"], storage.Type, capString)</td>
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
429
Marechai/Resources/Services/MachinesService.es.resx
Normal file
429
Marechai/Resources/Services/MachinesService.es.resx
Normal file
@@ -0,0 +1,429 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- ReSharper disable MarkupTextTypo -->
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="Loading..." xml:space="preserve">
|
||||
<value>Cargando...</value>
|
||||
<comment>Message that appears while data is being loaded from database</comment>
|
||||
</data>
|
||||
<data name="Machine not found in database" xml:space="preserve">
|
||||
<value>Máquina no encontrada en la base de datos</value>
|
||||
<comment>Not found</comment>
|
||||
</data>
|
||||
<data name="+info" xml:space="preserve">
|
||||
<value>+info</value>
|
||||
<comment>Abbreviation of information</comment>
|
||||
</data>
|
||||
<data name="PROTOTYPE" xml:space="preserve">
|
||||
<value>PROTOTIPO</value>
|
||||
<comment>Caps or other way of denoting importance</comment>
|
||||
</data>
|
||||
<data name="Introduction date" xml:space="preserve">
|
||||
<value>Fecha de introducción</value>
|
||||
<comment>Date</comment>
|
||||
</data>
|
||||
<data name="Family" xml:space="preserve">
|
||||
<value>Familia</value>
|
||||
<comment>Set of variations of the same machine</comment>
|
||||
</data>
|
||||
<data name="Model" xml:space="preserve">
|
||||
<value>Modelo</value>
|
||||
<comment>Model</comment>
|
||||
</data>
|
||||
<data name="Processors" xml:space="preserve">
|
||||
<value>Procesadores</value>
|
||||
<comment>General purpose processors or coprocessors, including math ones, not including graphical or sound oriented ones</comment>
|
||||
</data>
|
||||
<data name="{0} @ {1}MHz ({2} bits)" xml:space="preserve">
|
||||
<value>{0} a {1}Mhz ({2} bits)</value>
|
||||
<comment>{0} name, {1} speed in megahertz, {2} general purpose registers size in bits</comment>
|
||||
</data>
|
||||
<data name="{0} @ {1}MHz" xml:space="preserve">
|
||||
<value>{0} a {1}MHz</value>
|
||||
<comment>AAAA</comment>
|
||||
</data>
|
||||
<data name="Manufacturer" xml:space="preserve">
|
||||
<value>Fabricante</value>
|
||||
<comment>Manufacturer</comment>
|
||||
</data>
|
||||
<data name="Instruction set" xml:space="preserve">
|
||||
<value>Arquitectura</value>
|
||||
<comment>Instruction set, aka, architecture</comment>
|
||||
</data>
|
||||
<data name="Nominal speed" xml:space="preserve">
|
||||
<value>Velocidad nominal</value>
|
||||
<comment>Nominal speed</comment>
|
||||
</data>
|
||||
<data name="{0} general purpose registers of {1} bits that can be used as floating point registers of {2} bits and SIMD registers of {3} bits." xml:space="preserve">
|
||||
<value>{0} registros de propósito general de {1} bits que pueden ser usados como registros de coma flotante de {2} bits y como registros SIMD de {3} bits.</value>
|
||||
<comment>{0} general purpose registers, {1} {2} and {3} their size in bits.</comment>
|
||||
</data>
|
||||
<data name="{0} general purpose registers of {1} bits that can be used as floating point registers of {2} bits." xml:space="preserve">
|
||||
<value>{0} registros de propósito general de {1} bits que pueden ser usados como registros de coma flotante de {2} bits.</value>
|
||||
<comment>{0} general purpose registers, {1} and {2} their size in bits.</comment>
|
||||
</data>
|
||||
<data name="{0} general purpose registers of {1} bits that can be used as SIMD registers of {2} bits." xml:space="preserve">
|
||||
<value>{0} registros de propósito general de {1} bits que pueden ser usados como registros SIMD de {2} bits.</value>
|
||||
<comment>{0} general purpose registers, {1} and {2} their size in bits.</comment>
|
||||
</data>
|
||||
<data name="{0} general purpose registers of {1} bits." xml:space="preserve">
|
||||
<value>{0} registros de propósito general de {1} bits.</value>
|
||||
<comment>{0} general purpose registers, {1} their size in bits.</comment>
|
||||
</data>
|
||||
<data name="{0} floating point registers of {1} bits that can be used as SIMD registers of {2} bits." xml:space="preserve">
|
||||
<value>{0} registros de coma flotante de {1} bits que pueden ser usados como registros SIMD de {2} bits.</value>
|
||||
<comment>{0} floating point registers, {1} and {2} their size in bits.</comment>
|
||||
</data>
|
||||
<data name="{0} floating point registers of {1} bits." xml:space="preserve">
|
||||
<value>{0} registros de coma flotante de {1} bits.</value>
|
||||
<comment>{0} general purpose registers, {1} their size in bits.</comment>
|
||||
</data>
|
||||
<data name="Single instruction, multiple data" xml:space="preserve">
|
||||
<value>Instrucción sencilla, múltiples datos</value>
|
||||
<comment>Definition of SIMD</comment>
|
||||
</data>
|
||||
<data name="{0} SIMD registers of {1} bits." xml:space="preserve">
|
||||
<value>{0} registros SIMD de {1} bits.</value>
|
||||
<comment>{0} SIMD registers, {1} their size in bits.</comment>
|
||||
</data>
|
||||
<data name="Multi-core" xml:space="preserve">
|
||||
<value>Multi-núcleo</value>
|
||||
<comment>Multi core</comment>
|
||||
</data>
|
||||
<data name="{0} cores." xml:space="preserve">
|
||||
<value>{0} núcleos.</value>
|
||||
<comment>{0} is number of cores</comment>
|
||||
</data>
|
||||
<data name="Simultaneous multithreading" xml:space="preserve">
|
||||
<value>Multi-hilo simultáneo</value>
|
||||
<comment>Definition of SMT</comment>
|
||||
</data>
|
||||
<data name="{0} threads per core." xml:space="preserve">
|
||||
<value>{0} hilos por núcleo.</value>
|
||||
<comment>{0} is number of threads per core</comment>
|
||||
</data>
|
||||
<data name="{0} threads." xml:space="preserve">
|
||||
<value>{0} hilos.</value>
|
||||
<comment>{0} is number of threads per core</comment>
|
||||
</data>
|
||||
<data name="Bus" xml:space="preserve">
|
||||
<value>Bus</value>
|
||||
<comment>Computer bus</comment>
|
||||
</data>
|
||||
<data name="{0}-bit data." xml:space="preserve">
|
||||
<value>{0} bits de datos.</value>
|
||||
<comment>{0} is number of bits in data bus</comment>
|
||||
</data>
|
||||
<data name="{0}-bit address." xml:space="preserve">
|
||||
<value>{0} bits de direcciones.</value>
|
||||
<comment>{0} is number of bits in address bus</comment>
|
||||
</data>
|
||||
<data name="Cache" xml:space="preserve">
|
||||
<value>Caché</value>
|
||||
<comment>Cache</comment>
|
||||
</data>
|
||||
<data name="{0}KiB combined instruction-data L1" xml:space="preserve">
|
||||
<value>{0} KiB de L1 combinada de instrucciones y datos</value>
|
||||
<comment>{0} is number of kibibytes in combined instruction and data L1 cache</comment>
|
||||
</data>
|
||||
<data name="{0}KiB instruction L1" xml:space="preserve">
|
||||
<value>{0} KiB de L1 de instrucciones</value>
|
||||
<comment>{0} is number of kibibytes in L1 instruction cache</comment>
|
||||
</data>
|
||||
<data name="{0}KiB data L1" xml:space="preserve">
|
||||
<value>{0} KiB de L1 de datos</value>
|
||||
<comment>{0} is number of kibibytes in L1 data cache</comment>
|
||||
</data>
|
||||
<data name="{0}KiB L2" xml:space="preserve">
|
||||
<value>{0} KiB de L2</value>
|
||||
<comment>{0} is number of kibibytes in L2 cache</comment>
|
||||
</data>
|
||||
<data name="{0}KiB L3" xml:space="preserve">
|
||||
<value>{0} KiB de L3</value>
|
||||
<comment>{0} is number of kibibytes in L3 cache</comment>
|
||||
</data>
|
||||
<data name="Package" xml:space="preserve">
|
||||
<value>Empaquetado</value>
|
||||
<comment>Chip package</comment>
|
||||
</data>
|
||||
<data name="Manufacturing process" xml:space="preserve">
|
||||
<value>Proceso de fabricación</value>
|
||||
<comment>Chip manufacturing process</comment>
|
||||
</data>
|
||||
<data name="{0} @ {1}µm" xml:space="preserve">
|
||||
<value>{0} en {1}µm</value>
|
||||
<comment>{0} is manufacturing process and {1} is micrometers</comment>
|
||||
</data>
|
||||
<data name="{0} @ {1}nm" xml:space="preserve">
|
||||
<value>{0} en {1}nm</value>
|
||||
<comment>{0} is manufacturing process and {1} is nanometers</comment>
|
||||
</data>
|
||||
<data name="{0}µm" xml:space="preserve">
|
||||
<value>{0}µm</value>
|
||||
<comment>{0} is micrometers</comment>
|
||||
</data>
|
||||
<data name="{0}nm" xml:space="preserve">
|
||||
<value>{0}nm</value>
|
||||
<comment>{0} is nanometers</comment>
|
||||
</data>
|
||||
<data name="Die size" xml:space="preserve">
|
||||
<value>Área</value>
|
||||
<comment>Die area size</comment>
|
||||
</data>
|
||||
<data name="{0} mm²" xml:space="preserve">
|
||||
<value>{0} mm²</value>
|
||||
<comment>{0} is squared milimeters</comment>
|
||||
</data>
|
||||
<data name="Transistors" xml:space="preserve">
|
||||
<value>Transitores</value>
|
||||
<comment>Transistors of chip</comment>
|
||||
</data>
|
||||
<data name="Memory" xml:space="preserve">
|
||||
<value>Memoria</value>
|
||||
<comment>Memory</comment>
|
||||
</data>
|
||||
<data name="{0} GiB" xml:space="preserve">
|
||||
<value>{0} GiB</value>
|
||||
<comment>gibibytes</comment>
|
||||
</data>
|
||||
<data name="{0} MiB" xml:space="preserve">
|
||||
<value>{0} MiB</value>
|
||||
<comment>mebibytes</comment>
|
||||
</data>
|
||||
<data name="{0} KiB" xml:space="preserve">
|
||||
<value>{0} KiB</value>
|
||||
<comment>kibibytes</comment>
|
||||
</data>
|
||||
<data name="{0} bytes" xml:space="preserve">
|
||||
<value>{0} bytes</value>
|
||||
<comment>bytes</comment>
|
||||
</data>
|
||||
<data name="Unknown size" xml:space="preserve">
|
||||
<value>Tamaño desconocido</value>
|
||||
<comment>Unknown size</comment>
|
||||
</data>
|
||||
<data name="{0} GHz" xml:space="preserve">
|
||||
<value>{0} GHz</value>
|
||||
<comment>gigahertz</comment>
|
||||
</data>
|
||||
<data name="{0} MHz" xml:space="preserve">
|
||||
<value>{0} MHz</value>
|
||||
<comment>megahertz</comment>
|
||||
</data>
|
||||
<data name="{0} KHz" xml:space="preserve">
|
||||
<value>{0} KHz</value>
|
||||
<comment>kilohertz</comment>
|
||||
</data>
|
||||
<data name="{0} Hz" xml:space="preserve">
|
||||
<value>{0} Hz</value>
|
||||
<comment>hertz</comment>
|
||||
</data>
|
||||
<data name="unknown speed" xml:space="preserve">
|
||||
<value>velocidad desconocida</value>
|
||||
<comment>unknown speed</comment>
|
||||
</data>
|
||||
<data name="{0} of {1} memory ({2} at {3})" xml:space="preserve">
|
||||
<value>{0} de memoria de {1} ({2} a {3})</value>
|
||||
<comment>{0} size with above prefix, {1} usage, {2} type, {3} speed with above prefix</comment>
|
||||
</data>
|
||||
<data name="Graphics processing units" xml:space="preserve">
|
||||
<value>Unidades de proceso de gráficos</value>
|
||||
<comment>Chips that generate graphical output on a screen</comment>
|
||||
</data>
|
||||
<data name="Framebuffer" xml:space="preserve">
|
||||
<value>Framebuffer</value>
|
||||
<comment>Buffer or memory that directly stores the frame</comment>
|
||||
</data>
|
||||
<data name="This machine directly draws pixels from software to a memory region that's converted to video output by a DAC or similar without using any specific graphics processing unit." xml:space="preserve">
|
||||
<value>Esta máquina dibuja los píxeles directamente del software a una región de memoria que es convertida a una señal analógica sin ninguna unidad de proceso de gráficos.</value>
|
||||
<comment>Description of what a framebuffer is</comment>
|
||||
</data>
|
||||
<data name="Sound synthetizers" xml:space="preserve">
|
||||
<value>Sintetizadores de sonido</value>
|
||||
<comment>Sound synthetizers</comment>
|
||||
</data>
|
||||
<data name="Software" xml:space="preserve">
|
||||
<value>Software</value>
|
||||
<comment>Means that the software directly sends signals to a dac</comment>
|
||||
</data>
|
||||
<data name="This machine directly sends data to a DAC or similar connected to the audio output." xml:space="preserve">
|
||||
<value>Esta máquina envía señales desde el software directamente a un conversor digital a analógico conectado a la salida de sonido.</value>
|
||||
<comment>Description of how software audio works</comment>
|
||||
</data>
|
||||
<data name="Generators" xml:space="preserve">
|
||||
<value>Generadores</value>
|
||||
<comment>Sound waves generatos</comment>
|
||||
</data>
|
||||
<data name="{0} voices" xml:space="preserve">
|
||||
<value>{0} voces</value>
|
||||
<comment>Number of pulsed, modulated, or wave-tabled simultaneous voices</comment>
|
||||
</data>
|
||||
<data name="{0} square wave" xml:space="preserve">
|
||||
<value>{0} de onda cuadrada</value>
|
||||
<comment>{0} is number of square wave generators</comment>
|
||||
</data>
|
||||
<data name="{0} white noise" xml:space="preserve">
|
||||
<value>{0} de ruido blanco</value>
|
||||
<comment>{0} is number of white noise generators</comment>
|
||||
</data>
|
||||
<data name="Sample rate" xml:space="preserve">
|
||||
<value>Muestreo</value>
|
||||
<comment>Sample rate</comment>
|
||||
</data>
|
||||
<data name="Storage" xml:space="preserve">
|
||||
<value>Almacenamiento</value>
|
||||
<comment>Storage</comment>
|
||||
</data>
|
||||
<data name="{0} bits at {1} KHz" xml:space="preserve">
|
||||
<value>{0} bits a {1} KHz</value>
|
||||
<comment>{0} number of bits of sampling rate at {1} kilohertz</comment>
|
||||
</data>
|
||||
<data name="{0} bits at {1} Hz" xml:space="preserve">
|
||||
<value>{0} bits a {1} Hz</value>
|
||||
<comment>{0} number of bits of sampling rate at {1} hertz</comment>
|
||||
</data>
|
||||
<data name="{0} bits" xml:space="preserve">
|
||||
<value>{0} bits</value>
|
||||
<comment>{0} is number of bits</comment>
|
||||
</data>
|
||||
<data name="Synthesizer type" xml:space="preserve">
|
||||
<value>Tipo de síntesis</value>
|
||||
<comment>Synthesis type</comment>
|
||||
</data>
|
||||
<data name="{0} bps" xml:space="preserve">
|
||||
<value>{0} bps</value>
|
||||
<comment>bits per second</comment>
|
||||
</data>
|
||||
<data name="Available {0} interface." xml:space="preserve">
|
||||
<value>Interfaz {0} disponible.</value>
|
||||
<comment>{0} is interface name</comment>
|
||||
</data>
|
||||
<data name="{0} connected thru a {1} interface with a nominal capacity of {2}" xml:space="preserve">
|
||||
<value>{0} conectado por una interfaz {1} con una capacidad norminal de {2}</value>
|
||||
<comment>{0} is storage type, {1} is interface name, {2} is nominal capacity number formatted with above bytes or bps prefixes</comment>
|
||||
</data>
|
||||
<data name="{0} connected thru a {1} interface" xml:space="preserve">
|
||||
<value>{0} conectado por una interfaz {1}</value>
|
||||
<comment>{0} is storage type, {1} is interface name</comment>
|
||||
</data>
|
||||
<data name="{0} with a nominal capacity of {1}" xml:space="preserve">
|
||||
<value>{0} con una capacidad norminal de {1}</value>
|
||||
<comment>{0} is storage type, {1} is nominal capacity number formatted with above bytes or bps prefixes</comment>
|
||||
</data>
|
||||
</root>
|
||||
Reference in New Issue
Block a user