mirror of
https://github.com/dualshock-tools/dualshock-tools.github.io.git
synced 2026-07-18 13:44:17 +03:00
Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d1b6cd5c96 | ||
|
|
390f2d97b6 | ||
|
|
4fe737aed1 | ||
|
|
53456b9663 | ||
|
|
994501a614 | ||
|
|
3fc58dbe64 | ||
|
|
2a834b130b | ||
|
|
c436d94ead | ||
|
|
1e7d4e83cc |
377
core.js
377
core.js
@@ -32,6 +32,7 @@ var available_langs = {
|
||||
"ar_ar": { "name": "العربية", "file": "ar_ar.json", "direction": "rtl"},
|
||||
"bg_bg": { "name": "Български", "file": "bg_bg.json", "direction": "ltr"},
|
||||
"cz_cz": { "name": "Čeština", "file": "cz_cz.json", "direction": "ltr"},
|
||||
"da_dk": { "name": "Dansk", "file": "da_dk.json", "direction": "ltr"},
|
||||
"de_de": { "name": "Deutsch", "file": "de_de.json", "direction": "ltr"},
|
||||
"es_es": { "name": "Español", "file": "es_es.json", "direction": "ltr"},
|
||||
"fr_fr": { "name": "Français", "file": "fr_fr.json", "direction": "ltr"},
|
||||
@@ -587,6 +588,11 @@ function ds5_color(x) {
|
||||
return colorName;
|
||||
}
|
||||
|
||||
// This function should be used only for ASCII strings (not UTF)
|
||||
function reverse_str(s) {
|
||||
return s.split('').reverse().join('');
|
||||
}
|
||||
|
||||
|
||||
async function ds5_info(is_edge) {
|
||||
try {
|
||||
@@ -622,7 +628,7 @@ async function ds5_info(is_edge) {
|
||||
serial_number = await ds5_system_info(1, 19, 17);
|
||||
append_info(l("Serial Number"), serial_number, "hw");
|
||||
append_info_extra(l("MCU Unique ID"), await ds5_system_info(1, 9, 9, false), "hw");
|
||||
append_info_extra(l("PCBA ID"), await ds5_system_info(1, 17, 14), "hw");
|
||||
append_info_extra(l("PCBA ID"), reverse_str(await ds5_system_info(1, 17, 14)), "hw");
|
||||
append_info_extra(l("Battery Barcode"), await ds5_system_info(1, 24, 23), "hw");
|
||||
append_info_extra(l("VCM Left Barcode"), await ds5_system_info(1, 26, 16), "hw");
|
||||
append_info_extra(l("VCM Right Barcode"), await ds5_system_info(1, 28, 16), "hw");
|
||||
@@ -1166,8 +1172,8 @@ function gboot() {
|
||||
lang_init();
|
||||
init_svg_colors();
|
||||
welcome_modal();
|
||||
$("#checkCircularity").on('change', on_circ_check_change);
|
||||
on_circ_check_change();
|
||||
$("input[name='displayMode']").on('change', on_stick_mode_change);
|
||||
on_stick_mode_change();
|
||||
});
|
||||
|
||||
if (!("hid" in navigator)) {
|
||||
@@ -1322,43 +1328,12 @@ function ds5_finetune_update(name, plx, ply) {
|
||||
var yb = 15 + sz;
|
||||
var w = c.width;
|
||||
ctx.clearRect(0, 0, c.width, c.height);
|
||||
ctx.lineWidth = 1;
|
||||
ctx.fillStyle = '#ffffff';
|
||||
ctx.strokeStyle = '#000000';
|
||||
|
||||
// Left circle
|
||||
ctx.beginPath();
|
||||
ctx.arc(hb, yb, sz, 0, 2 * Math.PI);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
// Draw stick position with circle
|
||||
draw_stick_position(ctx, hb, yb, sz, plx, ply, { enable_zoom_center: true });
|
||||
|
||||
ctx.strokeStyle = '#aaaaaa';
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(hb-sz, yb);
|
||||
ctx.lineTo(hb+sz, yb);
|
||||
ctx.closePath();
|
||||
ctx.stroke();
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(hb, yb-sz);
|
||||
ctx.lineTo(hb, yb+sz);
|
||||
ctx.closePath();
|
||||
ctx.stroke();
|
||||
|
||||
ctx.fillStyle = '#000000';
|
||||
ctx.strokeStyle = '#000000';
|
||||
ctx.beginPath();
|
||||
ctx.arc(hb+plx*sz,yb+ply*sz,4, 0, 2*Math.PI);
|
||||
ctx.fill();
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(hb, yb);
|
||||
ctx.lineTo(hb+plx*sz, yb+ply*sz);
|
||||
ctx.stroke();
|
||||
|
||||
$("#"+ name + "x-lbl").text(float_to_str(plx));
|
||||
$("#"+ name + "y-lbl").text(float_to_str(ply));
|
||||
$("#"+ name + "x-lbl").text(float_to_str(plx, 3));
|
||||
$("#"+ name + "y-lbl").text(float_to_str(ply, 3));
|
||||
}
|
||||
|
||||
function finetune_close() {
|
||||
@@ -1390,42 +1365,31 @@ var rr_data=new Array(48);
|
||||
var enable_circ_test = false;
|
||||
|
||||
function reset_circularity() {
|
||||
for(i=0;i<ll_data.length;i++) ll_data[i] = 0;
|
||||
for(i=0;i<rr_data.length;i++) rr_data[i] = 0;
|
||||
ll_data.fill(0);
|
||||
rr_data.fill(0);
|
||||
enable_circ_test = false;
|
||||
ll_updated = false;
|
||||
$("#checkCircularity").prop('checked', false);
|
||||
$("#normalMode").prop('checked', true);
|
||||
refresh_stick_pos();
|
||||
}
|
||||
|
||||
function refresh_stick_pos() {
|
||||
var c = document.getElementById("stickCanvas");
|
||||
var ctx = c.getContext("2d");
|
||||
var sz = 60;
|
||||
var hb = 20 + sz;
|
||||
var yb = 15 + sz;
|
||||
var w = c.width;
|
||||
ctx.clearRect(0, 0, c.width, c.height);
|
||||
function draw_stick_position(ctx, center_x, center_y, sz, stick_x, stick_y, opts = {}) {
|
||||
const { circularity_data = null, enable_zoom_center = false } = opts;
|
||||
|
||||
// Draw base circle
|
||||
ctx.lineWidth = 1;
|
||||
ctx.fillStyle = '#ffffff';
|
||||
ctx.strokeStyle = '#000000';
|
||||
|
||||
// Left circle
|
||||
ctx.beginPath();
|
||||
ctx.arc(hb, yb, sz, 0, 2 * Math.PI);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
|
||||
// Right circle
|
||||
ctx.beginPath();
|
||||
ctx.arc(w - hb, yb, sz, 0, 2 * Math.PI);
|
||||
ctx.arc(center_x, center_y, sz, 0, 2 * Math.PI);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
|
||||
// Helper function for circularity visualization color
|
||||
function cc_to_color(cc) {
|
||||
var dd = Math.sqrt(Math.pow((1.0 - cc), 2));
|
||||
const dd = Math.sqrt(Math.pow((1.0 - cc), 2));
|
||||
let hh;
|
||||
if(cc <= 1.0)
|
||||
hh = 220 - 220 * Math.min(1.0, Math.max(0, (dd - 0.05)) / 0.1);
|
||||
else
|
||||
@@ -1433,148 +1397,161 @@ function refresh_stick_pos() {
|
||||
return hh;
|
||||
}
|
||||
|
||||
if(enable_circ_test) {
|
||||
var MAX_N = ll_data.length;
|
||||
// Draw circularity visualization if data provided
|
||||
if (circularity_data?.length > 0) {
|
||||
const MAX_N = circularity_data.length;
|
||||
|
||||
for(i=0;i<MAX_N;i++) {
|
||||
var kd = ll_data[i];
|
||||
var kd1 = ll_data[(i+1) % ll_data.length];
|
||||
for(let i = 0; i < MAX_N; i++) {
|
||||
const kd = circularity_data[i];
|
||||
const kd1 = circularity_data[(i+1) % circularity_data.length];
|
||||
if (kd === undefined || kd1 === undefined) continue;
|
||||
var ka = i * Math.PI * 2 / MAX_N;
|
||||
var ka1 = ((i+1)%MAX_N) * 2 * Math.PI / MAX_N;
|
||||
const ka = i * Math.PI * 2 / MAX_N;
|
||||
const ka1 = ((i+1)%MAX_N) * 2 * Math.PI / MAX_N;
|
||||
|
||||
var kx = Math.cos(ka) * kd;
|
||||
var ky = Math.sin(ka) * kd;
|
||||
var kx1 = Math.cos(ka1) * kd1;
|
||||
var ky1 = Math.sin(ka1) * kd1;
|
||||
const kx = Math.cos(ka) * kd;
|
||||
const ky = Math.sin(ka) * kd;
|
||||
const kx1 = Math.cos(ka1) * kd1;
|
||||
const ky1 = Math.sin(ka1) * kd1;
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(hb, yb);
|
||||
ctx.lineTo(hb+kx*sz, yb+ky*sz);
|
||||
ctx.lineTo(hb+kx1*sz, yb+ky1*sz);
|
||||
ctx.lineTo(hb, yb);
|
||||
ctx.moveTo(center_x, center_y);
|
||||
ctx.lineTo(center_x+kx*sz, center_y+ky*sz);
|
||||
ctx.lineTo(center_x+kx1*sz, center_y+ky1*sz);
|
||||
ctx.lineTo(center_x, center_y);
|
||||
ctx.closePath();
|
||||
|
||||
var cc = (kd + kd1) / 2;
|
||||
var hh = cc_to_color(cc);
|
||||
ctx.fillStyle = 'hsla(' + parseInt(hh) + ', 100%, 50%, 0.5)';
|
||||
ctx.fill();
|
||||
}
|
||||
|
||||
for(i=0;i<MAX_N;i++) {
|
||||
var kd = rr_data[i];
|
||||
var kd1 = rr_data[(i+1) % rr_data.length];
|
||||
if (kd === undefined || kd1 === undefined) continue;
|
||||
var ka = i * Math.PI * 2 / MAX_N;
|
||||
var ka1 = ((i+1)%MAX_N) * 2 * Math.PI / MAX_N;
|
||||
|
||||
var kx = Math.cos(ka) * kd;
|
||||
var ky = Math.sin(ka) * kd;
|
||||
var kx1 = Math.cos(ka1) * kd1;
|
||||
var ky1 = Math.sin(ka1) * kd1;
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(w-hb, yb);
|
||||
ctx.lineTo(w-hb+kx*sz, yb+ky*sz);
|
||||
ctx.lineTo(w-hb+kx1*sz, yb+ky1*sz);
|
||||
ctx.lineTo(w-hb, yb);
|
||||
ctx.closePath();
|
||||
|
||||
var cc = (kd + kd1) / 2;
|
||||
var hh = cc_to_color(cc);
|
||||
const cc = (kd + kd1) / 2;
|
||||
const hh = cc_to_color(cc);
|
||||
ctx.fillStyle = 'hsla(' + parseInt(hh) + ', 100%, 50%, 0.5)';
|
||||
ctx.fill();
|
||||
}
|
||||
}
|
||||
|
||||
// Draw crosshairs
|
||||
ctx.strokeStyle = '#aaaaaa';
|
||||
ctx.lineWidth = 1;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(hb-sz, yb);
|
||||
ctx.lineTo(hb+sz, yb);
|
||||
ctx.moveTo(center_x-sz, center_y);
|
||||
ctx.lineTo(center_x+sz, center_y);
|
||||
ctx.closePath();
|
||||
ctx.stroke();
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(w-hb-sz, yb);
|
||||
ctx.lineTo(w-hb+sz, yb);
|
||||
ctx.moveTo(center_x, center_y-sz);
|
||||
ctx.lineTo(center_x, center_y+sz);
|
||||
ctx.closePath();
|
||||
ctx.stroke();
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(hb, yb-sz);
|
||||
ctx.lineTo(hb, yb+sz);
|
||||
ctx.closePath();
|
||||
ctx.stroke();
|
||||
// Apply center zoom transformation if enabled
|
||||
let display_x = stick_x;
|
||||
let display_y = stick_y;
|
||||
if (enable_zoom_center) {
|
||||
const transformed = apply_center_zoom(stick_x, stick_y);
|
||||
display_x = transformed.x;
|
||||
display_y = transformed.y;
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(w-hb, yb-sz);
|
||||
ctx.lineTo(w-hb, yb+sz);
|
||||
ctx.closePath();
|
||||
ctx.stroke();
|
||||
|
||||
var plx = last_lx;
|
||||
var ply = last_ly;
|
||||
var prx = last_rx;
|
||||
var pry = last_ry;
|
||||
|
||||
if(enable_circ_test) {
|
||||
var pld = Math.sqrt(plx*plx + ply*ply);
|
||||
var pla = (parseInt(Math.round(Math.atan2(ply, plx) * MAX_N / 2.0 / Math.PI)) + MAX_N) % MAX_N;
|
||||
var old = ll_data[pla];
|
||||
if(old === undefined) old = 0;
|
||||
ll_data[pla] = Math.max(old, pld);
|
||||
|
||||
var prd = Math.sqrt(prx*prx + pry*pry);
|
||||
var pra = (parseInt(Math.round(Math.atan2(pry, prx) * MAX_N / 2.0 / Math.PI)) + MAX_N) % MAX_N;
|
||||
var old = rr_data[pra];
|
||||
if(old === undefined) old = 0;
|
||||
rr_data[pra] = Math.max(old, prd);
|
||||
// Draw light gray circle at 50% radius to show border of zoomed center
|
||||
ctx.strokeStyle = '#d3d3d3'; // light gray
|
||||
ctx.lineWidth = 1;
|
||||
ctx.beginPath();
|
||||
ctx.arc(center_x, center_y, sz * 0.5, 0, 2 * Math.PI);
|
||||
ctx.stroke();
|
||||
}
|
||||
|
||||
ctx.fillStyle = '#000000';
|
||||
ctx.strokeStyle = '#000000';
|
||||
|
||||
// Draw stick line with variable thickness
|
||||
// Calculate distance from center
|
||||
const stick_distance = Math.sqrt(display_x*display_x + display_y*display_y);
|
||||
const boundary_radius = 0.5; // 50% radius
|
||||
|
||||
// Determine if we need to draw a two-segment line
|
||||
const use_two_segments = enable_zoom_center && stick_distance > boundary_radius;
|
||||
if (use_two_segments) {
|
||||
// Calculate boundary point
|
||||
const boundary_x = (display_x / stick_distance) * boundary_radius;
|
||||
const boundary_y = (display_y / stick_distance) * boundary_radius;
|
||||
|
||||
// First segment: thicker line from center to boundary
|
||||
ctx.lineWidth = 3;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(center_x, center_y);
|
||||
ctx.lineTo(center_x + boundary_x*sz, center_y + boundary_y*sz);
|
||||
ctx.stroke();
|
||||
|
||||
// Second segment: thinner line from boundary to stick position
|
||||
ctx.lineWidth = 1;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(center_x + boundary_x*sz, center_y + boundary_y*sz);
|
||||
ctx.lineTo(center_x + display_x*sz, center_y + display_y*sz);
|
||||
ctx.stroke();
|
||||
} else {
|
||||
// Single line from center to stick position
|
||||
ctx.lineWidth = enable_zoom_center ? 3 : 1;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(center_x, center_y);
|
||||
ctx.lineTo(center_x + display_x*sz, center_y + display_y*sz);
|
||||
ctx.stroke();
|
||||
}
|
||||
|
||||
// Draw filled circle at stick position
|
||||
ctx.beginPath();
|
||||
ctx.arc(hb+plx*sz,yb+ply*sz,4, 0, 2*Math.PI);
|
||||
ctx.arc(center_x+display_x*sz, center_y+display_y*sz, 3, 0, 2*Math.PI);
|
||||
ctx.fill();
|
||||
}
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(hb, yb);
|
||||
ctx.lineTo(hb+plx*sz, yb+ply*sz);
|
||||
ctx.stroke();
|
||||
function refresh_stick_pos() {
|
||||
const c = document.getElementById("stickCanvas");
|
||||
const ctx = c.getContext("2d");
|
||||
const sz = 60;
|
||||
const hb = 20 + sz;
|
||||
const yb = 15 + sz;
|
||||
const w = c.width;
|
||||
ctx.clearRect(0, 0, c.width, c.height);
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.arc(w-hb+prx*sz, yb+pry*sz,4, 0, 2*Math.PI);
|
||||
ctx.fill();
|
||||
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(w-hb, yb);
|
||||
ctx.lineTo(w-hb+prx*sz, yb+pry*sz);
|
||||
ctx.stroke();
|
||||
|
||||
var lbl = "", lbx = "";
|
||||
$("#lx-lbl").text(float_to_str(plx));
|
||||
$("#ly-lbl").text(float_to_str(ply));
|
||||
$("#rx-lbl").text(float_to_str(prx));
|
||||
$("#ry-lbl").text(float_to_str(pry));
|
||||
let plx = last_lx;
|
||||
let ply = last_ly;
|
||||
let prx = last_rx;
|
||||
let pry = last_ry;
|
||||
|
||||
if(enable_circ_test) {
|
||||
var ofl = 0, ofr = 0, lcounter = 0, rcounter = 0;
|
||||
ofl = 0; ofr = 0;
|
||||
for (i=0;i<ll_data.length;i++)
|
||||
if(ll_data[i] > 0.2) {
|
||||
lcounter += 1;
|
||||
ofl += Math.pow(ll_data[i] - 1, 2);
|
||||
}
|
||||
for (i=0;i<rr_data.length;i++) {
|
||||
if(rr_data[i] > 0.2) {
|
||||
rcounter += 1;
|
||||
ofr += Math.pow(rr_data[i] - 1, 2);
|
||||
}
|
||||
}
|
||||
if(lcounter > 0)
|
||||
ofl = Math.sqrt(ofl / lcounter) * 100;
|
||||
if(rcounter > 0)
|
||||
ofr = Math.sqrt(ofr / rcounter) * 100;
|
||||
[[plx, ply, ll_data], [prx, pry, rr_data]].forEach(([px, py, circularity_data]) => {
|
||||
const MAX_N = circularity_data.length;
|
||||
const pa = (parseInt(Math.round(Math.atan2(py, px) * MAX_N / 2.0 / Math.PI)) + MAX_N) % MAX_N;
|
||||
const pd = Math.sqrt(px*px + py*py);
|
||||
const old = circularity_data[pa] ?? 0;
|
||||
circularity_data[pa] = Math.max(old, pd);
|
||||
});
|
||||
}
|
||||
|
||||
const enable_zoom_center = center_zoom_checked();
|
||||
// Draw left stick
|
||||
draw_stick_position(ctx, hb, yb, sz, plx, ply, {
|
||||
circularity_data: enable_circ_test ? ll_data : null,
|
||||
enable_zoom_center,
|
||||
});
|
||||
|
||||
// Draw right stick
|
||||
draw_stick_position(ctx, w-hb, yb, sz, prx, pry, {
|
||||
circularity_data: enable_circ_test ? rr_data : null,
|
||||
enable_zoom_center,
|
||||
});
|
||||
|
||||
const precision = enable_zoom_center ? 3 : 2;
|
||||
$("#lx-lbl").text(float_to_str(last_lx, precision));
|
||||
$("#ly-lbl").text(float_to_str(last_ly, precision));
|
||||
$("#rx-lbl").text(float_to_str(last_rx, precision));
|
||||
$("#ry-lbl").text(float_to_str(last_ry, precision));
|
||||
|
||||
if(enable_circ_test) {
|
||||
const olf = ll_data.reduce((acc, val) => val > 0.2 ? acc + Math.pow(val - 1, 2) : acc, 0);
|
||||
const lcounter = ll_data.filter(val => val > 0.2).length;
|
||||
const ofl = lcounter > 0 ? Math.sqrt(olf / lcounter) * 100 : 0;
|
||||
|
||||
const orf = rr_data.reduce((acc, val) => val > 0.2 ? acc + Math.pow(val - 1, 2) : acc, 0);
|
||||
const rcounter = rr_data.filter(val => val > 0.2).length;
|
||||
const ofr = rcounter > 0 ? Math.sqrt(orf / rcounter) * 100 : 0;
|
||||
|
||||
el = ofl.toFixed(2) + "%";
|
||||
er = ofr.toFixed(2) + "%";
|
||||
@@ -1605,12 +1582,38 @@ function refresh_stick_pos() {
|
||||
}
|
||||
}
|
||||
|
||||
function circ_checked() { return $("#checkCircularity").is(':checked') }
|
||||
function circ_checked() { return $("#checkCircularityMode").is(':checked') }
|
||||
function center_zoom_checked() { return $("#centerZoomMode").is(':checked') }
|
||||
|
||||
function on_circ_check_change() {
|
||||
function apply_center_zoom(x, y) {
|
||||
// Calculate distance from center
|
||||
const distance = Math.sqrt(x * x + y * y);
|
||||
|
||||
// If distance is 0, return original values
|
||||
if (distance === 0) {
|
||||
return { x, y};
|
||||
}
|
||||
|
||||
// Calculate angle
|
||||
const angle = Math.atan2(y, x);
|
||||
|
||||
// Apply center zoom transformation
|
||||
const new_distance =
|
||||
distance <= 0.05
|
||||
? (distance / 0.05) * 0.5 // 0 to 0.05 maps to 0 to 0.5 (half the radius)
|
||||
: 0.5 + ((distance - 0.05) / 0.95) * 0.5 // 0.05 to 1.0 maps to 0.5 to 1.0 (other half)
|
||||
|
||||
// Convert back to x, y coordinates
|
||||
return {
|
||||
x: Math.cos(angle) * new_distance,
|
||||
y: Math.sin(angle) * new_distance
|
||||
};
|
||||
}
|
||||
|
||||
function on_stick_mode_change() {
|
||||
enable_circ_test = circ_checked();
|
||||
for(i=0;i<ll_data.length;i++) ll_data[i] = 0;
|
||||
for(i=0;i<rr_data.length;i++) rr_data[i] = 0;
|
||||
ll_data.fill(0);
|
||||
rr_data.fill(0);
|
||||
|
||||
if(enable_circ_test) {
|
||||
$("#circ-data").show();
|
||||
@@ -1620,9 +1623,9 @@ function on_circ_check_change() {
|
||||
refresh_stick_pos();
|
||||
}
|
||||
|
||||
function float_to_str(f) {
|
||||
if(f < 0.004 && f >= -0.004) return "+0.00";
|
||||
return (f<0?"":"+") + f.toFixed(2);
|
||||
function float_to_str(f, precision = 2) {
|
||||
if(precision <=2 && f < 0.004 && f >= -0.004) return "+0.00";
|
||||
return (f<0?"":"+") + f.toFixed(precision);
|
||||
}
|
||||
|
||||
var on_delay = false;
|
||||
@@ -1874,10 +1877,10 @@ function process_ds4_input(data) {
|
||||
var rx = data.data.getUint8(2);
|
||||
var ry = data.data.getUint8(3);
|
||||
|
||||
var new_lx = Math.round((lx - 127.5) / 128 * 100) / 100;
|
||||
var new_ly = Math.round((ly - 127.5) / 128 * 100) / 100;
|
||||
var new_rx = Math.round((rx - 127.5) / 128 * 100) / 100;
|
||||
var new_ry = Math.round((ry - 127.5) / 128 * 100) / 100;
|
||||
var new_lx = (lx - 127.5) / 128;
|
||||
var new_ly = (ly - 127.5) / 128;
|
||||
var new_rx = (rx - 127.5) / 128;
|
||||
var new_ry = (ry - 127.5) / 128;
|
||||
|
||||
if(last_lx != new_lx || last_ly != new_ly || last_rx != new_rx || last_ry != new_ry) {
|
||||
last_lx = new_lx;
|
||||
@@ -1938,10 +1941,10 @@ function process_ds_input(data) {
|
||||
var rx = data.data.getUint8(2);
|
||||
var ry = data.data.getUint8(3);
|
||||
|
||||
var new_lx = Math.round((lx - 127.5) / 128 * 100) / 100;
|
||||
var new_ly = Math.round((ly - 127.5) / 128 * 100) / 100;
|
||||
var new_rx = Math.round((rx - 127.5) / 128 * 100) / 100;
|
||||
var new_ry = Math.round((ry - 127.5) / 128 * 100) / 100;
|
||||
var new_lx = (lx - 127.5) / 128;
|
||||
var new_ly = (ly - 127.5) / 128;
|
||||
var new_rx = (rx - 127.5) / 128;
|
||||
var new_ry = (ry - 127.5) / 128;
|
||||
|
||||
if(last_lx != new_lx || last_ly != new_ly || last_rx != new_rx || last_ry != new_ry) {
|
||||
last_lx = new_lx;
|
||||
@@ -2239,7 +2242,7 @@ async function multi_calib_sticks_end() {
|
||||
await ds4_calibrate_sticks_end();
|
||||
else
|
||||
await ds5_calibrate_sticks_end();
|
||||
on_circ_check_change();
|
||||
on_stick_mode_change();
|
||||
}
|
||||
|
||||
async function multi_calib_sticks_sample() {
|
||||
@@ -2270,7 +2273,7 @@ async function multi_calibrate_range_on_close() {
|
||||
await ds4_calibrate_range_end();
|
||||
else
|
||||
await ds5_calibrate_range_end();
|
||||
on_circ_check_change();
|
||||
on_stick_mode_change();
|
||||
}
|
||||
|
||||
|
||||
|
||||
14
index.html
14
index.html
@@ -297,8 +297,16 @@ dl.row dd { font-family: monospace; }
|
||||
</div>
|
||||
<div class="px-2">
|
||||
<center>
|
||||
<input class="form-check-input" type="checkbox" value="" id="checkCircularity">
|
||||
<label class="form-check-label ds-i18n" for="checkCircularity">Check circularity</label>
|
||||
<div class="btn-group mb-3" role="group" aria-label="Display mode options">
|
||||
<input type="radio" class="btn-check" name="displayMode" id="normalMode" value="normal" checked>
|
||||
<label class="btn btn-outline-secondary btn-sm ds-i18n" for="normalMode">Normal</label>
|
||||
|
||||
<input type="radio" class="btn-check" name="displayMode" id="centerZoomMode" value="centerZoom">
|
||||
<label class="btn btn-outline-secondary btn-sm ds-i18n" for="centerZoomMode">10x zoom</label>
|
||||
|
||||
<input type="radio" class="btn-check" name="displayMode" id="checkCircularityMode" value="checkCircularity">
|
||||
<label class="btn btn-outline-secondary btn-sm ds-i18n" for="checkCircularityMode">Check circularity</label>
|
||||
</div>
|
||||
<div class="hstack" id="circ-data">
|
||||
<div class="vstack" style="text-align: center;">
|
||||
<span class="ds-i18n">Err L:</span>
|
||||
@@ -943,7 +951,7 @@ dl.row dd { font-family: monospace; }
|
||||
<div class="container">
|
||||
<footer>
|
||||
<div class="d-flex flex-column flex-sm-row justify-content-between py-4 my-4 border-top" id="footbody">
|
||||
<p><a target="_blank" href="https://github.com/dualshock-tools/dualshock-tools.github.io/commits/main/"><span class="ds-i18n">Version</span> 2.9</a> (2025-07-27) - <a href="#" class="ds-i18n" onclick="show_donate_modal();">Support this project</a> <span id="authorMsg"></span></p>
|
||||
<p><a target="_blank" href="https://github.com/dualshock-tools/dualshock-tools.github.io/commits/main/"><span class="ds-i18n">Version</span> 2.11</a> (2025-08-02) - <a href="#" class="ds-i18n" onclick="show_donate_modal();">Support this project</a> <span id="authorMsg"></span></p>
|
||||
|
||||
<ul class="list-unstyled d-flex">
|
||||
<li class="ms-3"><a class="link-body-emphasis" href="mailto:ds4@the.al" target="_blank"><svg class="bi" width="24" height="24"><use xlink:href="#mail"/></svg></a></li>
|
||||
|
||||
@@ -187,6 +187,7 @@
|
||||
"Bluetooth Address": "عنوان البلوتوث",
|
||||
"Show all": "عرض الكل",
|
||||
"(beta)": "",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -219,6 +220,7 @@
|
||||
"Left stick": "",
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "",
|
||||
"Please note: the stick modules on the DS Edge <b>cannot be calibrated via software alone</b>.To store a custom calibration on the stick's internal memory, a <b>hardware modification</b> is required.": "",
|
||||
|
||||
@@ -161,6 +161,7 @@
|
||||
"Save changes permanently": "Запазете промените постоянно",
|
||||
"Reboot controller": "Рестартирайте контролера",
|
||||
"(beta)": "",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -207,6 +208,7 @@
|
||||
"MCU Unique ID": "",
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"PCBA ID": "",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "",
|
||||
|
||||
@@ -143,6 +143,7 @@
|
||||
"Check circularity": "Zkontrolujte rozsah",
|
||||
"(Dualsense) Will updating the firmware reset calibration?": "",
|
||||
"(beta)": "",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -198,6 +199,7 @@
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"No.": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Only after you have done that, you click on \"Done\".": "",
|
||||
"PCBA ID": "",
|
||||
|
||||
248
lang/da_dk.json
Normal file
248
lang/da_dk.json
Normal file
@@ -0,0 +1,248 @@
|
||||
{
|
||||
".authorMsg": "- Oversættelse til dansk af Claus Christensen",
|
||||
"DualShock Calibration GUI": "DualShock Kalibrerings GUI",
|
||||
"Unsupported browser. Please use a web browser with WebHID support (e.g. Chrome).": "Browseren understøttes ikke. Brug venligst en webbrowser med WebHID-understøttelse (f.eks. Chrome).",
|
||||
"Connect": "Tilslut",
|
||||
"Connected to:": "Tilsluttet til:",
|
||||
"Disconnect": "Afbryd",
|
||||
"Calibrate stick center": "Kalibrér styrepindens centrum",
|
||||
"Calibrate stick range": "Kalibrér styrepindens rækkevidde",
|
||||
"Sections below are not useful, just some debug infos or manual commands": "Afsnittene nedenfor er ikke relevante, blot nogle fejlfindingsoplysninger eller manuelle kommandoer",
|
||||
"NVS Status": "NVS Status",
|
||||
"Unknown": "Ukendt",
|
||||
"Debug buttons": "Fejlfindingsknapper",
|
||||
"Query NVS status": "Forespørg NVS status",
|
||||
"NVS unlock": "lås NVS op",
|
||||
"NVS lock": "lås NVS",
|
||||
"Get BDAddr": "Hent BDAddr",
|
||||
"Fast calibrate stick center (OLD)": "Hurtig kalibrering af styrepindens centrum (GAMMEL)",
|
||||
"Stick center calibration": "Kalibrering af styrepindens centrum",
|
||||
"Welcome": "Velkommen",
|
||||
"Step 1": "Trin 1",
|
||||
"Step 2": "Trin 2",
|
||||
"Step 3": "Trin 3",
|
||||
"Step 4": "Trin 4",
|
||||
"Completed": "Fuldført",
|
||||
"Welcome to the stick center-calibration wizard!": "Velkommen til guiden til kalibrering af styrepindens centrum!",
|
||||
"This tool will guide you in re-centering the analog sticks of your controller. It consists in four steps: you will be asked to move both sticks in a direction and release them.": "Dette værktøj vil guide dig i at centrere de analoge styrepinde på din controller igen. Det består af fire trin: Du vil blive bedt om at bevæge begge styrepinde i én retning og derefter slippe dem.",
|
||||
"Please be aware that, <i>once the calibration is running, it cannot be canceled</i>. Do not close this page or disconnect your controller until is completed.": "Vær venligst opmærksom på, at <i>når kalibreringen først er i gang, kan den ikke annulleres</i>. Luk ikke denne side, og frakobl ikke din controller, før processen er afsluttet.",
|
||||
"Press <b>Start</b> to begin calibration.": "Tryk på <b>\"Start\"</b> for at begynde kalibreringen.",
|
||||
"Please move both sticks to the <b>top-left corner</b> and release them.": "Flyt begge styrepinde til det <b>øverste venstre hjørne</b>, og slip dem.",
|
||||
"When the sticks are back in the center, press <b>Continue</b>.": "Når styrepindene er tilbage i centrum, skak du trykke på <b>\"Fortsæt\"</b>.",
|
||||
"Please move both sticks to the <b>top-right corner</b> and release them.": "Flyt begge styrepinde til det <b>øverste højre hjørne</b>, og slip dem.",
|
||||
"Please move both sticks to the <b>bottom-left corner</b> and release them.": "Flyt begge styrepinde til det <b>nederste venstre hjørne</b>, og slip dem.",
|
||||
"Please move both sticks to the <b>bottom-right corner</b> and release them.": "Flyt begge styrepinde til det <b>nederste højre hjørne</b>, og slip dem.",
|
||||
"Calibration completed successfully!": "Kalibreringen er gennemført med succes!",
|
||||
"Next": "Næste",
|
||||
"Recentering the controller sticks. ": "Genjustering af controllerens styrepinde. ",
|
||||
"Please do not close this window and do not disconnect your controller. ": "Luk venligst ikke dette vindue, og frakobl ikke din controller. ",
|
||||
"Range calibration": "Rækkeviddekalibrering",
|
||||
"<b>The controller is now sampling data!</b>": "<b>Controlleren indsamler nu data!</b>",
|
||||
"Rotate the sticks slowly to cover the whole range. Press \"Done\" when completed.": "Rotér styrepindene langsomt for at dække hele rækkevidden. Tryk på \"Færdig\", når du er færdig.",
|
||||
"Done": "Færdig",
|
||||
"Hi, thank you for using this software.": "Hej, tak fordi du bruger denne software.",
|
||||
"If you're finding it helpful and you want to support my efforts, feel free to": "Hvis du finder den nyttig, og du ønsker at støtte mine bestræbelser, er du velkommen til at",
|
||||
"buy me a coffee": "købe mig en kaffe",
|
||||
"! :)": "! :)",
|
||||
"Do you have any suggestion or issue? Drop me a message via email or discord.": "Har du forslag eller oplever du problemer? Send mig en besked via e-mail eller Discord.",
|
||||
"Cheers!": "Cheers!",
|
||||
"Support this project": "Støt dette projekt",
|
||||
"unknown": "ukendt",
|
||||
"original": "original",
|
||||
"clone": "klon",
|
||||
"locked": "låst",
|
||||
"unlocked": "ulåst",
|
||||
"error": "fejl",
|
||||
"Build Date": "Build Dato",
|
||||
"HW Version": "HW Version",
|
||||
"SW Version": "SW Version",
|
||||
"Device Type": "Enhedstype",
|
||||
"Range calibration completed": "Rækkeviddekalibrering gennemført",
|
||||
"Range calibration failed: ": "Rækkeviddekalibrering mislykkedes: ",
|
||||
"Cannot unlock NVS": "Kan ikke låse NVS op",
|
||||
"Cannot relock NVS": "Kan ikke låse NVS igen",
|
||||
"Error 1": "Fejl 1",
|
||||
"Error 2": "Fejl 2",
|
||||
"Error 3": "Fejl 3",
|
||||
"Stick calibration failed: ": "Kalibrering af styrepinde mislykkedes: ",
|
||||
"Stick calibration completed": "Kalibrering af styrepinde gennemført",
|
||||
"NVS Lock failed: ": "NVS låsning mislykkedes: ",
|
||||
"NVS Unlock failed: ": "NVS oplåsning mislykkedes: ",
|
||||
"Please connect only one controller at time.": "Forbind kun én controller ad gangen.",
|
||||
"Sony DualShock 4 V1": "Sony DualShock 4 V1",
|
||||
"Sony DualShock 4 V2": "Sony DualShock 4 V2",
|
||||
"Sony DualSense": "Sony DualSense",
|
||||
"Sony DualSense Edge": "Sony DualSense Edge",
|
||||
"Connected invalid device: ": "Forbundet til en ugyldig enhed: ",
|
||||
"The device appears to be a DS4 clone. All functionalities are disabled.": "Enheden ser ud til at være en DS4-klon. Alle funktioner er deaktiveret.",
|
||||
"Error: ": "Fejl: ",
|
||||
"My handle on discord is: the_al": "Mit brugernavn på Discord er: the_al",
|
||||
"Initializing...": "Initialiserer...",
|
||||
"Storing calibration...": "Gemmer kalibrering...",
|
||||
"Sampling...": "Sampling...",
|
||||
"Calibration in progress": "Kalibrering er i gang",
|
||||
"Start": "Start",
|
||||
"Continue": "Fortsæt",
|
||||
"You can check the calibration with the": "Du kan tjekke kalibreringen med",
|
||||
"Have a nice day :)": "Hav en god dag :)",
|
||||
"Welcome to the Calibration GUI": "Velkommen til Kalibrerings GUI",
|
||||
"Just few things to know before you can start:": "Bare et par ting, du skal vide, før du går i gang:",
|
||||
"This website is not affiliated with Sony, PlayStation & co.": "Denne hjemmeside er ikke tilknyttet Sony, PlayStation & co.",
|
||||
"This service is provided without warranty. Use at your own risk.": "Denne service leveres uden garanti og benyttes på eget ansvar.",
|
||||
"Keep the internal battery of the controller connected and ensure it is well charged. If the battery dies during operations, the controller will be damaged and rendered unusable.": "Hold controllerens interne batteri tilsluttet, og sørg for, at det er godt opladet. Hvis batteriet løber tør for strøm under processen, kan controlleren blive beskadiget og ubrugelig.",
|
||||
"Before doing the permanent calibration, try the temporary one to ensure that everything is working well.": "Før du foretager en permanent kalibrering, bør du prøve en midlertidig for at sikre, at alt fungerer korrekt.",
|
||||
"Understood": "Forstået",
|
||||
"Version": "Version",
|
||||
"Frequently Asked Questions": "Ofte stillede spørgsmål",
|
||||
"Close": "Luk",
|
||||
"Welcome to the F.A.Q. section! Below, you'll find answers to some of the most commonly asked questions about this website. If you have any other inquiries or need further assistance, feel free to reach out to me directly. Your feedback and questions are always welcome!": "<b>Velkommen til sektionen med ofte stillede spørgsmål!</b><br> Her finder du svar på nogle af de mest almindelige spørgsmål om denne hjemmeside. Hvis du har andre spørgsmål eller har brug for yderligere hjælp, er du altid velkommen til at kontakte mig direkte. Din feedback og dine spørgsmål er altid velkomne!",
|
||||
"How does it work?": "Hvordan fungerer det?",
|
||||
"Behind the scenes, this website is the culmination of one year of dedicated effort in reverse-engineering DualShock controllers for fun/hobby from a random guy on the internet.": "Bag kulisserne er denne hjemmeside resultatet af et års dedikeret arbejde med reverse-engineering af DualShock controllere for sjov/hobby, udført af en tilfældig fyr på internettet.",
|
||||
"Through": "Gennem",
|
||||
"this research": "denne forskning",
|
||||
", it was discovered that there exist some undocumented commands on DualShock controllers that can be sent via USB and are used during factory assembly process. If these commands are sent, the controller starts the recalibration of analog sticks.": ", blev det opdaget, at der findes nogle udokumenterede kommandoer på DualShock-controllere, som kan sendes via USB og anvendes under fabriksmonteringsprocessen. Når disse kommandoer sendes, starter controlleren en genkalibrering af de analoge styrepinde.",
|
||||
"While the primary focus of this research wasn't initially centered on recalibration, it became apparent that a service offering this capability could greatly benefit numerous individuals. And thus, here we are.": "Selvom det oprindelige fokus for denne forskning oprindeligt ikke var rettet mod genkalibrering, blev det hurtigt klart, at en service med denne funktion kunne være til stor gavn for mange. Og dermed er vi her.",
|
||||
"Does the calibration remain effective during gameplay on PS4/PS5?": "Bliver kalibreringen ved med at være aktiv under gameplay på PS4/PS5?",
|
||||
"Yes, if you tick the checkbox \"Write changes permanently in the controller\". In that case, the calibration is flashed directly in the controller firmware. This ensures that it remains in place regardless of the console it's connected to.": "Ja, hvis du sætter kryds i boksen \"Skriv ændringer permanent i controlleren\", bliver kalibreringen skrevet direkte ind i controllerens firmware. Det sikrer, at den forbliver aktiv, uanset hvilken konsol controlleren tilsluttes.",
|
||||
"Is this an officially endorsed service?": "Er dette en officielt godkendt service?",
|
||||
"No, this service is simply a creation by a DualShock enthusiast.": "Nej, denne service er blot skabt af en DualShock-entusiast.",
|
||||
"Does this website detects if a controller is a clone?": "Kan denne hjemmeside registrere, om en controller er en klon?",
|
||||
"Yes, only DualShock4 at the moment. This happened because I accidentally purchased some clones, spent time identifying the differences and added this functionality to prevent future deception.": "Ja, kun DualShock4 i øjeblikket. Det skete, fordi jeg ved en fejl købte nogle kloner, brugte tid på at identificere forskellene og tilføjede denne funktionalitet for at forhindre fremtidigt bedrag.",
|
||||
"Unfortunately, the clones cannot be calibrated anyway, because they only clone the behavior of a DualShock4 during a normal gameplay, not all the undocumented functionalities.": "Desværre kan klonerne ikke kalibreres, fordi de kun efterligner DualShock4’s adfærd under almindeligt gameplay og ikke alle de udokumenterede funktioner.",
|
||||
"If you want to extend this detection functionality to DualSense, please ship me a fake DualSense and you'll see it in few weeks.": "Hvis du ønsker at udvide denne detektionsfunktionalitet til DualSense, så send mig en falsk DualSense, og du vil kunne se resultaterne om et par uger.",
|
||||
"What development is in plan?": "Hvilke forbedringer er planlagt?",
|
||||
"I maintain two separate to-do lists for this project, although the priority has yet to be established.": "Jeg vedligeholder to separate to-do-lister for dette projekt, selvom prioriteringen endnu ikke er fastlagt.",
|
||||
"The first list is about enhancing support for DualShock4 and DualSense controllers:": "Den første liste handler om at forbedre understøttelsen af DualShock4- og DualSense-controllere:",
|
||||
"Implement calibration of L2/R2 triggers.": "Implementering af kalibrering for L2/R2-aftrækker.",
|
||||
"Improve detection of clones, particularly beneficial for those seeking to purchase used controllers with assurance of authenticity.": "Forbedring af registreringen af kloner, hvilket især er nyttigt for dem, der ønsker at købe brugte controllere med garanti for ægthed.",
|
||||
"Enhance user interface (e.g. provide additional controller information)": "Forbedring af brugergrænsefladen (f.eks. ved at vise flere oplysninger om controlleren).",
|
||||
"Add support for recalibrating IMUs.": "Tilføjelse af understøttelse for genkalibrering af IMU’er.",
|
||||
"Additionally, explore the possibility of reviving non-functioning DualShock controllers (further discussion available on Discord for interested parties).": "Undersøgelse af muligheden for at genoplive ikke-fungerende DualShock-controllere (yderligere diskussion er tilgængelig på Discord for interesserede).",
|
||||
"The second list contains new controllers I aim to support:": "Den anden liste indeholder nye controllere, jeg har til hensigt at understøtte:",
|
||||
"DualSense Edge": "DualSense Edge",
|
||||
"DualShock 3": "DualShock 3",
|
||||
"XBox Controllers": "Xbox Controller",
|
||||
"Each of these tasks presents both immense interest and significant time investment. To provide context, supporting a new controller typically demands 6-12 months of full-time research, alongside a stroke of good fortune.": "Hver af disse opgaver er både utroligt spændende og kræver en betydelig tidsmæssig investering. For at sætte det i perspektiv kræver det typisk 6-12 måneders fuldtidsforskning at tilføje understøttelse af en ny controller - og en god portion held.",
|
||||
"I love this service, it helped me! How can I contribute?": "Jeg elsker denne service, den har hjulpet mig! Hvordan kan jeg bidrage?",
|
||||
"I'm glad to hear that you found this helpful! If you're interested in contributing, here are a few ways you can help me:": "Jeg er glad for at høre, at du fandt dette nyttigt! Hvis du er interesseret i at bidrage, er her nogle måder, du kan hjælpe mig på:",
|
||||
"Consider making a": "Overvej at give en",
|
||||
"donation": "donation",
|
||||
"to support my late-night caffeine-fueled reverse-engineering efforts.": ", for at støtte mine sene nætter med koffein-drevne reverse-engineering indsatser.",
|
||||
"Ship me a controller you would love to add (send me an email for organization).": "Send mig en controller, du gerne vil have tilføjet (send en e-mail for at aftale det praktiske).",
|
||||
"Translate this website in your language": "Oversæt denne hjemmeside til dit sprog",
|
||||
", to help more people like you!": ", for at hjælpe flere personer som dig!",
|
||||
"This website uses analytics to improve the service.": "Hjemmesiden anvender analyseværktøjer for at forbedre servicen.",
|
||||
"Board Model": "Board Model",
|
||||
"This feature is experimental.": "Denne funktion er eksperimentel.",
|
||||
"Please let me know if the board model of your controller is not detected correctly.": "Giv mig venligst besked, hvis board modellen på din controller ikke bliver registreret korrekt.",
|
||||
"Board model detection thanks to": "Board model detektion, tak til",
|
||||
"Please connect the device using a USB cable.": "Tilslut venligst enheden med et USB-kabel.",
|
||||
"This DualSense controller has outdated firmware.": "Denne DualSense controller har forældet firmware.",
|
||||
"Please update the firmware and try again.": "Opdater venligst firmwaren og prøv igen.",
|
||||
"Joystick Info": "Joystick Info",
|
||||
"Err R:": "Fejl R:",
|
||||
"Err L:": "Fejl L:",
|
||||
"Check circularity": "Tjek cirkularitet",
|
||||
"Can I reset a permanent calibration to previous calibration?": "Kan jeg nulstille en permanent kalibrering til en tidligere kalibrering?",
|
||||
"No.": "Nej.",
|
||||
"Can you overwrite a permanent calibration?": "Kan man overskrive en permanent kalibrering?",
|
||||
"Yes. Simply do another permanent calibration.": "Ja. Du skal blot foretage en ny permanent kalibrering.",
|
||||
"Does this software resolve stickdrift?": "Kan denne software løse styrepinddrift?",
|
||||
"Stickdrift is caused by a physical defect; namely dirt, worn potentiometer or in some cases a worn spring.": "Styrepinddrift skyldes en fysisk fejl; nemlig snavs, en slidt potentiometer eller i nogle tilfælde en slidt fjeder.",
|
||||
"This software will not fix stick drift on its own if you already experience that. What it will help with, is ensuring the new joystick(s) will function properly after replacing the old one(s) to work well with.": "Denne software kan ikke alene rette styrepinddrift, hvis du allerede oplever det. Det, den kan hjælpe med, er at sikre, at den nye styrepind eller de nye styrepinde fungerer korrekt efter udskiftning af de gamle.",
|
||||
"I have noticed some controllers out of the box have worse factory calibration than if I would recalibrate them. Especially true for circularity of SCUF controllers with a unique shell.": "Jeg har bemærket, at nogle controllere direkte fra fabrikken har dårligere kalibrering end efter en genkalibrering. Det gælder især for cirkulariteten på SCUF-controllere med en unik skal.",
|
||||
"(Dualsense) Will updating the firmware reset calibration?": "(Dualsense) Vil en opdatering af firmwaren nulstille kalibreringen?",
|
||||
"After range calibration, joysticks always go in corners.": "Efter rækkeviddekalibrering, bevæger styrepindene sig altid ud i hjørnerne.",
|
||||
"This issue happens because you have clicked \"Done\" immediately after starting a range calibration.": "Dette problem opstår, fordi du har klikket på \"Færdig\" lige efter at have startet en rækkeviddekalibrering.",
|
||||
"Please read the instructions.": "Læs venligst vejledningen.",
|
||||
"You have to rotate the joysticks before you press \"Done\".": "Du skal dreje styrepindene, inden du trykker på \"Færdig\".",
|
||||
"Make sure to touch the edges of the joystick frame and rotate slowly, preferably in each direction - clockwise and anti-clockwise.": "Sørg for at røre ved kanterne af styrepindens ramme og drej langsomt, helst i begge retninger - med uret og mod uret.",
|
||||
"Only after you have done that, you click on \"Done\".": "Først når du har gjort det, skal du klikke på \"Færdig\".",
|
||||
"Changes saved successfully": "Ændringer gemt med succes",
|
||||
"Error while saving changes:": "Fejl under gemning af ændringer",
|
||||
"Save changes permanently": "Gem ændringer permanent",
|
||||
"Reboot controller": "Genstart Controller",
|
||||
"Controller Info": "Controller Info",
|
||||
"Debug Info": "Fejlfindingsinfo",
|
||||
"Software": "Software",
|
||||
"Hardware": "Hardware",
|
||||
"FW Build Date": "FW Build Dato",
|
||||
"FW Type": "FW Type",
|
||||
"FW Series": "FW Serie",
|
||||
"Serial Number": "Serienummer",
|
||||
"Battery Barcode": "Batteri Stregkode",
|
||||
"VCM Left Barcode": "VCM Venstre Stregkode",
|
||||
"VCM Right Barcode": "VCM Højre Stregkode",
|
||||
"Show all": "Vis alt",
|
||||
"Finetune stick calibration": "Finjuster styrepindskalibrering",
|
||||
"(beta)": "(beta)",
|
||||
"This screen allows to finetune raw calibration data on your controller": "Denne skærm giver mulighed for at finjustere de rå kalibreringsdata på din controller.",
|
||||
"Left stick": "Venstre styrepind",
|
||||
"Right stick": "Højre styrepind",
|
||||
"Center X": "Centrér X",
|
||||
"Center Y": "Centrér Y",
|
||||
"Save": "Gem",
|
||||
"Cancel": "Afbryd",
|
||||
"The DualShock Calibration GUI does not currently support the DualSense Edge.": "DualShock Kalibrerings GUI understøtter i øjeblikket ikke DualSense Edge.",
|
||||
"I'm actively working on adding compatibility, the primary challenge lies in storing data into the stick modules.": "Jeg arbejder aktivt på at tilføje kompatibilitet, den primære udfordring ligger i at gemme data i stick modulerne.",
|
||||
"If this tool has been helpful to you or you want to see DualSense Edge support arrive faster, please consider supporting the project with a": "Hvis dette værktøj har været nyttigt for dig, eller du gerne vil se DualSense Edge understøttelse komme hurtigere, så overvej venligst at støtte projektet med en",
|
||||
"Thank you for your generosity and support!": "Tak for din gavmildhed og støtte!",
|
||||
"30th Anniversary": "30th Anniversary",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "<b>Eksternt</b>: ved at påføre +1,8V direkte på det synlige testpunkt uden at åbne controlleren.",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "<b>Intern</b>: ved at lodde en ledning fra en +1,8V kilde til skrivebeskyttelses-testpunktet (TP).",
|
||||
"Astro Bot": "Astro Bot",
|
||||
"Bluetooth Address": "Bluetooth Adresse",
|
||||
"Calibration is being stored in the stick modules.": "Kalibreringen bliver gemt i styrepindmodulerne.",
|
||||
"Cannot lock": "Kan ikke låse",
|
||||
"Cannot store data into": "Kan ikke gemme data i",
|
||||
"Cannot unlock": "Kan ikke låse op",
|
||||
"Chroma Indigo": "Chroma Indigo",
|
||||
"Chroma Pearl": "Chroma Pearl",
|
||||
"Chroma Teal": "Chroma Teal",
|
||||
"Cobalt Blue": "Cobalt Blue",
|
||||
"Color": "Farve",
|
||||
"Color detection thanks to": "Farvedetektering, tak til",
|
||||
"Cosmic Red": "Cosmic Red",
|
||||
"DualSense Edge Calibration": "DualSense Edge Kalibrering",
|
||||
"FW Update": "FW Opdatering",
|
||||
"FW Update Info": "FW Opdateringsinfo",
|
||||
"FW Version": "FW Version",
|
||||
"For more info or help, feel free to reach out on Discord.": "For mere info eller hjælp, er du velkommen til at kontakte os på Discord.",
|
||||
"Fortnite": "Fortnite",
|
||||
"Galactic Purple": "Galactic Purple",
|
||||
"God of War Ragnarok": "God of War Ragnarok",
|
||||
"Grey Camouflage": "Grey Camouflage",
|
||||
"HW Model": "HW Model",
|
||||
"If the calibration is not stored permanently, please double-check the wirings of the hardware mod.": "Hvis kalibreringen ikke gemmes permanent, skal du dobbelttjekke kabelføringen af hardware-modifikationen.",
|
||||
"Left Module Barcode": "Venstre Modul Stregkode",
|
||||
"MCU Unique ID": "MCU Unikt ID",
|
||||
"Midnight Black": "Midnight Black",
|
||||
"More details and images": "Flere detaljer og billeder",
|
||||
"Nova Pink": "Nova Pink",
|
||||
"PCBA ID": "PCBA ID",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "Forbind venligst en DualShock 4-, DualSense- eller DualSense Edge-controller til din computer, og tryk på Tilslut.",
|
||||
"Right Module Barcode": "Højre Modul Stregkode",
|
||||
"SBL FW Version": "SBL FW Version",
|
||||
"Spider FW Version": "Spider FW Version",
|
||||
"Spider-Man 2": "Spider-Man 2",
|
||||
"Starlight Blue": "Starlight Blue",
|
||||
"Sterling Silver": "Sterling Silver",
|
||||
"Support for calibrating DualSense Edge stick modules is now available as an <b>experimental feature</b>.": "Understøttelse af kalibrering af DualSense Edge styrepindmoduler er nu tilgængelig som en <b>eksperimentel funktion</b>.",
|
||||
"The Last of Us": "The Last of Us",
|
||||
"This involves temporarily disabling write protection by applying <b>+1.8V</b> to a specific test point on each module.": "Dette involverer midlertidigt at deaktivere skrivebeskyttelsen ved, at anvende <b>+1,8V</b> til et specifikt testpunkt på hver modul.",
|
||||
"This is only for advanced users. If you're not sure what you're doing, please do not attempt it.": "Dette er kun for avancerede brugere. Hvis du er usikker på hvad du laver, bør du ikke forsøge det.",
|
||||
"Touchpad FW Version": "Touchpad FW Version",
|
||||
"Touchpad ID": "Touchpad ID",
|
||||
"Venom FW Version": "Venom FW Version",
|
||||
"Volcanic Red": "Volcanic Red",
|
||||
"We are not responsible for any damage caused by attempting this modification.": "Vi påtager os intet ansvar for eventuelle skader forårsaget af denne ændring.",
|
||||
"White": "Hvid",
|
||||
"You can do this in two ways:": "Du kan gøre dette på to måder:",
|
||||
"here": "her",
|
||||
"left module": "venstre modul",
|
||||
"right module": "højre modul",
|
||||
"10x zoom": "",
|
||||
"Normal": "",
|
||||
"Please note: the stick modules on the DS Edge <b>cannot be calibrated via software alone</b>.To store a custom calibration on the stick's internal memory, a <b>hardware modification</b> is required.": "",
|
||||
"": ""
|
||||
}
|
||||
@@ -187,6 +187,7 @@
|
||||
"I'm actively working on adding compatibility, the primary challenge lies in storing data into the stick modules.": "Ich arbeite aktiv daran, die Kompatibilität hinzuzufügen. Die größte Herausforderung besteht darin, Daten in die Stick-Module zu speichern.",
|
||||
"If this tool has been helpful to you or you want to see DualSense Edge support arrive faster, please consider supporting the project with a": "Wenn Ihnen dieses Tool geholfen hat oder Sie möchten, dass die DualSense-Edge-Unterstützung schneller verfügbar ist, ziehen Sie bitte in Betracht, das Projekt mit einem Beitrag zu unterstützen",
|
||||
"Thank you for your generosity and support!": "Vielen Dank für Ihre Großzügigkeit und Unterstützung!",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -218,6 +219,7 @@
|
||||
"MCU Unique ID": "",
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"PCBA ID": "",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "",
|
||||
|
||||
@@ -143,6 +143,7 @@
|
||||
"Check circularity": "Comprobar circularidad",
|
||||
"(Dualsense) Will updating the firmware reset calibration?": "",
|
||||
"(beta)": "",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -198,6 +199,7 @@
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"No.": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Only after you have done that, you click on \"Done\".": "",
|
||||
"PCBA ID": "",
|
||||
|
||||
@@ -143,6 +143,7 @@
|
||||
"Check circularity": "Vérifier la circularité",
|
||||
"(Dualsense) Will updating the firmware reset calibration?": "",
|
||||
"(beta)": "",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -198,6 +199,7 @@
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"No.": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Only after you have done that, you click on \"Done\".": "",
|
||||
"PCBA ID": "",
|
||||
|
||||
@@ -235,10 +235,12 @@
|
||||
"Sterling Silver": "Sterling Silver",
|
||||
"Volcanic Red": "Volcanic Red",
|
||||
"White": "Fehér",
|
||||
"10x zoom": "",
|
||||
"Chroma Indigo": "",
|
||||
"Chroma Pearl": "",
|
||||
"Chroma Teal": "",
|
||||
"Fortnite": "",
|
||||
"Normal": "",
|
||||
"Spider-Man 2": "",
|
||||
"The Last of Us": "",
|
||||
"": ""
|
||||
|
||||
@@ -242,5 +242,7 @@
|
||||
"Fortnite": "Fortnite",
|
||||
"Spider-Man 2": "Spider-Man 2",
|
||||
"The Last of Us": "The Last of Us",
|
||||
"10x zoom": "Zoom 10x",
|
||||
"Normal": "Normale",
|
||||
"": ""
|
||||
}
|
||||
|
||||
@@ -155,6 +155,7 @@
|
||||
"If this tool has been helpful to you or you want to see DualSense Edge support arrive faster, please consider supporting the project with a": "このツールが役に立った場合、またはDualSense Edgeのサポートを早く実現したい場合は、プロジェクトへの支援をご検討ください。",
|
||||
"Thank you for your generosity and support!": "ご支援とご厚意に感謝します!",
|
||||
"(Dualsense) Will updating the firmware reset calibration?": "",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -203,6 +204,7 @@
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"No.": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Only after you have done that, you click on \"Done\".": "",
|
||||
"PCBA ID": "",
|
||||
|
||||
@@ -186,6 +186,7 @@
|
||||
"Bluetooth Address": "Bluetooth Address",
|
||||
"Show all": "모두 보기",
|
||||
"(beta)": "",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -218,6 +219,7 @@
|
||||
"Left stick": "",
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "",
|
||||
"Please note: the stick modules on the DS Edge <b>cannot be calibrated via software alone</b>.To store a custom calibration on the stick's internal memory, a <b>hardware modification</b> is required.": "",
|
||||
|
||||
@@ -143,6 +143,7 @@
|
||||
"Check circularity": "Controleer de circulariteit",
|
||||
"(Dualsense) Will updating the firmware reset calibration?": "",
|
||||
"(beta)": "",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -198,6 +199,7 @@
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"No.": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Only after you have done that, you click on \"Done\".": "",
|
||||
"PCBA ID": "",
|
||||
|
||||
@@ -236,11 +236,13 @@
|
||||
"here": "tutaj",
|
||||
"left module": "lewy moduł",
|
||||
"right module": "prawy moduł",
|
||||
"Chroma Indigo": "",
|
||||
"Chroma Pearl": "",
|
||||
"Chroma Teal": "",
|
||||
"Fortnite": "",
|
||||
"Spider-Man 2": "",
|
||||
"The Last of Us": "",
|
||||
"Chroma Indigo": "Chroma Indigo",
|
||||
"Chroma Pearl": "Chroma Pearl",
|
||||
"Chroma Teal": "Chroma Teal",
|
||||
"Fortnite": "Fortnite",
|
||||
"Spider-Man 2": "Spider-Man 2",
|
||||
"The Last of Us": "The Last of US",
|
||||
"10x zoom": "",
|
||||
"Normal": "",
|
||||
"": ""
|
||||
}
|
||||
@@ -161,6 +161,7 @@
|
||||
"Save changes permanently": "Salvar alterações permanentemente.",
|
||||
"Reboot controller": "Reiniciar controle",
|
||||
"(beta)": "(beta)",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -207,6 +208,7 @@
|
||||
"MCU Unique ID": "",
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"PCBA ID": "",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "",
|
||||
|
||||
@@ -223,6 +223,7 @@
|
||||
"Right Module Barcode": "Código de barras do módulo direito",
|
||||
"left module": "módulo esquerdo",
|
||||
"right module": "módulo direito",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"Astro Bot": "",
|
||||
"Chroma Indigo": "",
|
||||
@@ -235,6 +236,7 @@
|
||||
"God of War Ragnarok": "",
|
||||
"Grey Camouflage": "",
|
||||
"Midnight Black": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Spider-Man 2": "",
|
||||
"Starlight Blue": "",
|
||||
|
||||
@@ -198,6 +198,7 @@
|
||||
"I'm actively working on adding compatibility, the primary challenge lies in storing data into the stick modules.": "Aktivno radim na dodavanju kompatibilnosti, glavni izazov je u čuvanju podataka u modulima džojstika.",
|
||||
"If this tool has been helpful to you or you want to see DualSense Edge support arrive faster, please consider supporting the project with a": "Ako vam je ovaj alat bio koristan ili želite da podrška za DualSense Edge stigne brže, razmislite o podršci projekta sa",
|
||||
"Thank you for your generosity and support!": "Hvala vam na velikodušnosti i podršci!",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
@@ -223,6 +224,7 @@
|
||||
"Left Module Barcode": "",
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "",
|
||||
"Please note: the stick modules on the DS Edge <b>cannot be calibrated via software alone</b>.To store a custom calibration on the stick's internal memory, a <b>hardware modification</b> is required.": "",
|
||||
|
||||
@@ -222,6 +222,7 @@
|
||||
"here": "здесь",
|
||||
"left module": "Левый модуль",
|
||||
"right module": "Правый модуль",
|
||||
"10x zoom": "",
|
||||
"30th Anniversary": "",
|
||||
"Astro Bot": "",
|
||||
"Chroma Indigo": "",
|
||||
@@ -234,6 +235,7 @@
|
||||
"God of War Ragnarok": "",
|
||||
"Grey Camouflage": "",
|
||||
"Midnight Black": "",
|
||||
"Normal": "",
|
||||
"Nova Pink": "",
|
||||
"Spider-Man 2": "",
|
||||
"Starlight Blue": "",
|
||||
|
||||
170
lang/tr_tr.json
170
lang/tr_tr.json
@@ -1,5 +1,5 @@
|
||||
{
|
||||
".authorMsg": "- Çeviri: <a href='https://www.youtube.com/channel/UC8pzDCIt_CUj8sa7cYgPzHQ'>Tamir-Teknik</a> tarafından yapılmıştır.",
|
||||
".authorMsg": "- Çeviri: <a href='https://www.youtube.com/channel/UC8pzDCIt_CUj8sa7cYgPzHQ'>Tamir-Teknik</a> ve <a href='https://share.google/hCBJV5fFMbd5gJxxZ'>CzR PlayStation Teknik Servis</a> tarafından yapılmıştır.",
|
||||
"DualShock Calibration GUI": "DualShock Kalibrasyon Arayüzü",
|
||||
"Unsupported browser. Please use a web browser with WebHID support (e.g. Chrome).": "Desteklenmeyen tarayıcı. Lütfen WebHID desteği olan bir web tarayıcısı kullanın (örneğin, Chrome).",
|
||||
"Connect": "Bağlan",
|
||||
@@ -85,7 +85,7 @@
|
||||
"Have a nice day :)": "İyi günler! :)",
|
||||
"Welcome to the Calibration GUI": "Kalibrasyon Arayüzü'ne hoş geldiniz",
|
||||
"Just few things to know before you can start:": "Başlamadan önce bilmeniz gereken birkaç şey:",
|
||||
"This website is not affiliated with Sony, PlayStation & co.": "Bu web sitesi, Sony, PlayStation ve diğerleri ile ilişkili değildir.",
|
||||
"This website is not affiliated with Sony, PlayStation & co.": "Bu web sitesi, Sony, PlayStation ve diğerleri ile ilişkili değildir.",
|
||||
"This service is provided without warranty. Use at your own risk.": "Bu hizmet garanti olmaksızın sunulmaktadır. Kullanım kendi sorumluluğunuzdadır.",
|
||||
"Keep the internal battery of the controller connected and ensure it is well charged. If the battery dies during operations, the controller will be damaged and rendered unusable.": "Denetleyicinin dahili bataryasını bağlı tutun ve iyi şarj edildiğinden emin olun. İşlemler sırasında pil biterse, denetleyici zarar görecektir ve kullanılamaz hale gelecektir.",
|
||||
"Before doing the permanent calibration, try the temporary one to ensure that everything is working well.": "Kalıcı kalibrasyonu yapmadan önce, her şeyin iyi çalıştığından emin olmak için geçici bir kalibrasyon yapın.",
|
||||
@@ -143,7 +143,7 @@
|
||||
"Check circularity": "Daireselliği kontrol et",
|
||||
"Can I reset a permanent calibration to previous calibration?": "Kalıcı bir kalibrasyonu önceki kalibrasyona sıfırlayabilir miyim?",
|
||||
"No.": "Hayır.",
|
||||
"Can you overwrite a permanent calibration?": "Kalıcı bir kalibrasyonun üzerine yeniden yazabilirmiyiz",
|
||||
"Can you overwrite a permanent calibration?": "Kalıcı bir kalibrasyonun üzerine yeniden yazabilir miyiz?",
|
||||
"Yes. Simply do another permanent calibration.": "Evet. Sadece yeni bir kalıcı kalibrasyon yapın.",
|
||||
"Does this software resolve stickdrift?": "Bu yazılım analog kaydırma sorununu çözer mi?",
|
||||
"Stickdrift is caused by a physical defect; namely dirt, worn potentiometer or in some cases a worn spring.": "Analog kaydırması fiziksel bir arızadan kaynaklanır; kir, aşınmış potansiyometre veya bazı durumlarda aşınmış bir yaydan.",
|
||||
@@ -160,86 +160,88 @@
|
||||
"Error while saving changes:": "Değişiklikleri kaydederken hata:",
|
||||
"Save changes permanently": "Değişiklikleri kalıcı olarak kaydet",
|
||||
"Reboot controller": "Denetleyiciyi yeniden başlat",
|
||||
"(beta)": "",
|
||||
"30th Anniversary": "",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "",
|
||||
"Astro Bot": "",
|
||||
"Battery Barcode": "",
|
||||
"Bluetooth Address": "",
|
||||
"Calibration is being stored in the stick modules.": "",
|
||||
"Cancel": "",
|
||||
"Cannot lock": "",
|
||||
"Cannot store data into": "",
|
||||
"Cannot unlock": "",
|
||||
"Center X": "",
|
||||
"Center Y": "",
|
||||
"Chroma Indigo": "",
|
||||
"Chroma Pearl": "",
|
||||
"Chroma Teal": "",
|
||||
"Cobalt Blue": "",
|
||||
"Color": "",
|
||||
"Color detection thanks to": "",
|
||||
"Controller Info": "",
|
||||
"Cosmic Red": "",
|
||||
"Debug Info": "",
|
||||
"Debug buttons": "",
|
||||
"DualSense Edge Calibration": "",
|
||||
"FW Build Date": "",
|
||||
"FW Series": "",
|
||||
"FW Type": "",
|
||||
"FW Update": "",
|
||||
"FW Update Info": "",
|
||||
"FW Version": "",
|
||||
"Finetune stick calibration": "",
|
||||
"For more info or help, feel free to reach out on Discord.": "",
|
||||
"Fortnite": "",
|
||||
"Galactic Purple": "",
|
||||
"God of War Ragnarok": "",
|
||||
"Grey Camouflage": "",
|
||||
"HW Model": "",
|
||||
"Hardware": "",
|
||||
"I'm actively working on adding compatibility, the primary challenge lies in storing data into the stick modules.": "",
|
||||
"If the calibration is not stored permanently, please double-check the wirings of the hardware mod.": "",
|
||||
"If this tool has been helpful to you or you want to see DualSense Edge support arrive faster, please consider supporting the project with a": "",
|
||||
"Left Module Barcode": "",
|
||||
"Left stick": "",
|
||||
"MCU Unique ID": "",
|
||||
"Midnight Black": "",
|
||||
"More details and images": "",
|
||||
"Nova Pink": "",
|
||||
"PCBA ID": "",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "",
|
||||
"Please note: the stick modules on the DS Edge <b>cannot be calibrated via software alone</b>.To store a custom calibration on the stick's internal memory, a <b>hardware modification</b> is required.": "",
|
||||
"Right Module Barcode": "",
|
||||
"Right stick": "",
|
||||
"SBL FW Version": "",
|
||||
"Save": "",
|
||||
"Serial Number": "",
|
||||
"Show all": "",
|
||||
"Software": "",
|
||||
"Spider FW Version": "",
|
||||
"Spider-Man 2": "",
|
||||
"Starlight Blue": "",
|
||||
"Sterling Silver": "",
|
||||
"Support for calibrating DualSense Edge stick modules is now available as an <b>experimental feature</b>.": "",
|
||||
"Thank you for your generosity and support!": "",
|
||||
"The DualShock Calibration GUI does not currently support the DualSense Edge.": "",
|
||||
"The Last of Us": "",
|
||||
"This involves temporarily disabling write protection by applying <b>+1.8V</b> to a specific test point on each module.": "",
|
||||
"This is only for advanced users. If you're not sure what you're doing, please do not attempt it.": "",
|
||||
"This screen allows to finetune raw calibration data on your controller": "",
|
||||
"Touchpad FW Version": "",
|
||||
"Touchpad ID": "",
|
||||
"VCM Left Barcode": "",
|
||||
"VCM Right Barcode": "",
|
||||
"Venom FW Version": "",
|
||||
"Volcanic Red": "",
|
||||
"We are not responsible for any damage caused by attempting this modification.": "",
|
||||
"White": "",
|
||||
"You can do this in two ways:": "",
|
||||
"here": "",
|
||||
"left module": "",
|
||||
"right module": "",
|
||||
"(beta)": "(beta)",
|
||||
"30th Anniversary": "30. Yıl Dönümü",
|
||||
"<b>Externally</b>: by applying +1.8V directly to the visible test point without opening the controller": "<b>Harici olarak</b>: Denetleyiciyi açmadan görünür test noktasına doğrudan +1.8V uygulayarak",
|
||||
"<b>Internally</b>: by soldering a wire from a +1.8V source to the write-protect TP.": "<b>Dahili olarak</b>: +1.8V bir kaynaktan yazma koruma TP'sine bir kablo lehimleyerek.",
|
||||
"Astro Bot": "Astro Bot",
|
||||
"Battery Barcode": "Batarya Barkodu",
|
||||
"Bluetooth Address": "Bluetooth Adresi",
|
||||
"Calibration is being stored in the stick modules.": "Kalibrasyon, analog modüllerine kaydediliyor.",
|
||||
"Cancel": "İptal",
|
||||
"Cannot lock": "Kilitlenemiyor",
|
||||
"Cannot store data into": "Veri kaydedilemiyor",
|
||||
"Cannot unlock": "Kilit açılamıyor",
|
||||
"Center X": "Merkez X",
|
||||
"Center Y": "Merkez Y",
|
||||
"Chroma Indigo": "Kroma İndigo",
|
||||
"Chroma Pearl": "Kroma İnci",
|
||||
"Chroma Teal": "Kroma Turkuaz",
|
||||
"Cobalt Blue": "Kobalt Mavisi",
|
||||
"Color": "Renk",
|
||||
"Color detection thanks to": "Renk tespiti sayesinde",
|
||||
"Controller Info": "Denetleyici Bilgisi",
|
||||
"Cosmic Red": "Kozmik Kırmızı",
|
||||
"Debug Info": "Hata Ayıklama Bilgisi",
|
||||
"Debug buttons": "Hata ayıklama düğmeleri",
|
||||
"DualSense Edge Calibration": "DualSense Edge Kalibrasyonu",
|
||||
"FW Build Date": "FW Derleme Tarihi",
|
||||
"FW Series": "FW Serisi",
|
||||
"FW Type": "FW Türü",
|
||||
"FW Update": "FW Güncellemesi",
|
||||
"FW Update Info": "FW Güncelleme Bilgisi",
|
||||
"FW Version": "FW Sürümü",
|
||||
"Finetune stick calibration": "Analog kalibrasyonunu ince ayarla",
|
||||
"For more info or help, feel free to reach out on Discord.": "Daha fazla bilgi veya yardım için Discord üzerinden ulaşabilirsiniz.",
|
||||
"Fortnite": "Fortnite",
|
||||
"Galactic Purple": "Galaktik Mor",
|
||||
"God of War Ragnarok": "God of War Ragnarok",
|
||||
"Grey Camouflage": "Gri Kamuflaj",
|
||||
"HW Model": "HW Modeli",
|
||||
"Hardware": "Donanım",
|
||||
"I'm actively working on adding compatibility, the primary challenge lies in storing data into the stick modules.": "Uyumluluk ekleme üzerinde aktif olarak çalışıyorum, asıl zorluk verilerin analog modüllere kaydedilmesinde yatıyor.",
|
||||
"If the calibration is not stored permanently, please double-check the wirings of the hardware mod.": "Kalibrasyon kalıcı olarak kaydedilmezse, lütfen donanım modunun kablolamasını iki kez kontrol edin.",
|
||||
"If this tool has been helpful to you or you want to see DualSense Edge support arrive faster, please consider supporting the project with a": "Eğer bu araç size yardımcı olduysa veya DualSense Edge desteğinin daha hızlı gelmesini istiyorsanız, lütfen projeyi bir",
|
||||
"Left Module Barcode": "Sol Modül Barkodu",
|
||||
"Left stick": "Sol analog",
|
||||
"MCU Unique ID": "MCU Benzersiz Kimliği",
|
||||
"Midnight Black": "Gece Yarısı Siyahı",
|
||||
"More details and images": "Daha fazla detay ve görsel",
|
||||
"Nova Pink": "Nova Pembe",
|
||||
"PCBA ID": "PCBA Kimliği",
|
||||
"Please connect a DualShock 4, a DualSense or DualSense Edge controller to your computer and press Connect.": "Lütfen bilgisayarınıza bir DualShock 4, bir DualSense veya DualSense Edge denetleyici bağlayın ve Bağlan'a basın.",
|
||||
"Please note: the stick modules on the DS Edge <b>cannot be calibrated via software alone</b>.To store a custom calibration on the stick's internal memory, a <b>hardware modification</b> is required.": "Lütfen dikkat: DS Edge üzerindeki analog modülleri <b>yalnızca yazılım aracılığıyla kalibre edilemez</b>. Özelleştirilmiş bir kalibrasyonu analogun dahili belleğine kaydetmek için bir <b>donanım değişikliği</b> gereklidir.",
|
||||
"Right Module Barcode": "Sağ Modül Barkodu",
|
||||
"Right stick": "Sağ analog",
|
||||
"SBL FW Version": "SBL FW Sürümü",
|
||||
"Save": "Kaydet",
|
||||
"Serial Number": "Seri Numarası",
|
||||
"Show all": "Tümünü göster",
|
||||
"Software": "Yazılım",
|
||||
"Spider FW Version": "Örümcek FW Sürümü",
|
||||
"Spider-Man 2": "Örümcek-Adam 2",
|
||||
"Starlight Blue": "Yıldız Işığı Mavisi",
|
||||
"Sterling Silver": "Gümüş",
|
||||
"Support for calibrating DualSense Edge stick modules is now available as an <b>experimental feature</b>.": "DualSense Edge analog modüllerinin kalibrasyonuna destek, artık <b>deneysel bir özellik</b> olarak mevcuttur.",
|
||||
"Thank you for your generosity and support!": "Cömertliğiniz ve desteğiniz için teşekkür ederiz!",
|
||||
"The DualShock Calibration GUI does not currently support the DualSense Edge.": "DualShock Kalibrasyon Arayüzü şu anda DualSense Edge'i desteklemiyor.",
|
||||
"The Last of Us": "The Last of Us",
|
||||
"This involves temporarily disabling write protection by applying <b>+1.8V</b> to a specific test point on each module.": "Bu, her modül üzerindeki belirli bir test noktasına <b>+1.8V</b> uygulayarak yazma korumasını geçici olarak devre dışı bırakmayı içerir.",
|
||||
"This is only for advanced users. If you're not sure what you're doing, please do not attempt it.": "Bu sadece ileri düzey kullanıcılar içindir. Ne yaptığınızdan emin değilseniz, lütfen denemeyin.",
|
||||
"This screen allows to finetune raw calibration data on your controller": "Bu ekran, denetleyicinizdeki ham kalibrasyon verilerini ince ayarlamaya olanak tanır",
|
||||
"Touchpad FW Version": "Dokunmatik Yüzey FW Sürümü",
|
||||
"Touchpad ID": "Dokunmatik Yüzey Kimliği",
|
||||
"VCM Left Barcode": "VCM Sol Barkodu",
|
||||
"VCM Right Barcode": "VCM Sağ Barkodu",
|
||||
"Venom FW Version": "Venom FW Sürümü",
|
||||
"Volcanic Red": "Volkanik Kırmızı",
|
||||
"We are not responsible for any damage caused by attempting this modification.": "Bu modifikasyonu denemenin neden olduğu herhangi bir hasardan sorumlu değiliz.",
|
||||
"White": "Beyaz",
|
||||
"You can do this in two ways:": "Bunu iki şekilde yapabilirsiniz:",
|
||||
"here": "burada",
|
||||
"left module": "sol modül",
|
||||
"right module": "sağ modül",
|
||||
"10x zoom": "",
|
||||
"Normal": "",
|
||||
"": ""
|
||||
}
|
||||
@@ -241,5 +241,7 @@
|
||||
"Fortnite": "Обмежена серія Fortnite",
|
||||
"Spider-Man 2": "Обмежена серія Spider-Man 2",
|
||||
"The Last of Us": "Обмежена серія The Last of Us",
|
||||
"10x zoom": "",
|
||||
"Normal": "",
|
||||
"": ""
|
||||
}
|
||||
}
|
||||
@@ -242,5 +242,7 @@
|
||||
"Fortnite": "堡垒之夜",
|
||||
"Spider-Man 2": "漫威蜘蛛侠2",
|
||||
"The Last of Us": "最后生还者",
|
||||
"10x zoom": "",
|
||||
"Normal": "",
|
||||
"": ""
|
||||
}
|
||||
@@ -242,5 +242,7 @@
|
||||
"Fortnite": "要塞英雄",
|
||||
"Spider-Man 2": "蜘蛛人2",
|
||||
"The Last of Us": "最後生還者",
|
||||
"10x zoom": "",
|
||||
"Normal": "",
|
||||
"": ""
|
||||
}
|
||||
Reference in New Issue
Block a user