{"id":11666,"date":"2026-11-06T17:47:31","date_gmt":"2026-11-06T16:47:31","guid":{"rendered":"https:\/\/retrofixer.it\/?page_id=11666"},"modified":"2026-11-06T17:47:31","modified_gmt":"2026-11-06T16:47:31","slug":"guasti-amiga","status":"publish","type":"page","link":"https:\/\/retrofixer.it\/en\/guasti-amiga\/","title":{"rendered":"Amiga faults"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"11666\" class=\"elementor elementor-11666\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fc27055 e-con-full e-flex e-con e-parent\" data-id=\"fc27055\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ef9a134 elementor-widget elementor-widget-html\" data-id=\"ef9a134\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>window.RF_EN=\/^en\/i.test(document.documentElement.lang||'');if(window.RF_EN)document.documentElement.classList.add('rf-en');<\/script>\r\n<style>.rf-en .rf-it{display:none!important}<\/style>\r\n<div class=\"rf-it\" data-no-translation>\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Press+Start+2P&family=VT323&family=Inter:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n.rfd{\r\n  --bg:#0f0c24; --bg2:#171338; --panel:#1d1846; --line:#342c74; --text:#eceaff; --muted:#aaa5d8;\r\n  --c64:#3e31a2; --c64l:#7c70da; --ink:#b3abff; --mag:#e0398a; --yel:#ffd23f; --grn:#5ad15f; --cya:#3fd8ff; --ora:#f8961e; --red:#f94144;\r\n  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif; color:var(--text); background:var(--bg); line-height:1.55;\r\n  position:relative; padding:44px 0 70px; overflow:hidden;\r\n}\r\n.rfd *,.rfd *::before,.rfd *::after{box-sizing:border-box}\r\n.rfd h2,.rfd h3,.rfd h4,.rfd p,.rfd ul,.rfd ol{margin:0;padding:0}\r\n.rfd h2,.rfd h3,.rfd h4{font-family:'Inter',system-ui,sans-serif!important;letter-spacing:0;text-transform:none;font-weight:700}\r\n.rfd a{color:inherit;text-decoration:none}\r\n.rfd button,.rfd input{font:inherit;color:inherit}\r\n.rfd button{cursor:pointer}\r\n\/* il tema centra il contenuto di tutti i pulsanti: qui lo rimettiamo a posto *\/\r\n.rfd .opt,.rfd .res{justify-content:flex-start!important;text-align:left!important}\r\n.rfd .opt{align-items:baseline!important}\r\n.rfd .ic{display:block!important;text-align:left!important;height:auto!important;line-height:1.3!important}\r\n.rfd [hidden]{display:none!important}\r\n.rfd .wrap{max-width:1200px;margin:0 auto;padding:0 20px}\r\n.rfd .stripe{height:6px;background:linear-gradient(90deg,var(--red) 0 16.6%,var(--ora) 0 33.3%,var(--yel) 0 50%,var(--grn) 0 66.6%,var(--cya) 0 83.3%,var(--c64l) 0);position:absolute;left:0;right:0;top:0}\r\n.rfd .kicker{display:inline-block;font-family:'Press Start 2P',monospace;font-size:10px;color:var(--yel);letter-spacing:.06em;margin-bottom:12px}\r\n.rfd .h2{font-family:'Press Start 2P',monospace!important;font-size:clamp(17px,2.4vw,26px);line-height:1.45;color:#fff;text-shadow:3px 3px 0 #000;margin-bottom:10px;font-weight:400}\r\n.rfd .h3{font-family:'Press Start 2P',monospace!important;font-size:clamp(13px,1.6vw,16px);line-height:1.5;color:#fff;margin-bottom:8px;font-weight:400}\r\n.rfd .sub{color:var(--muted);font-size:15.5px;max-width:720px}\r\n.rfd section{margin-top:56px}\r\n.rfd .head{margin-bottom:20px}\r\n\r\n\/* intestazione *\/\r\n.rfd .top{display:flex;gap:24px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin-bottom:22px}\r\n.rfd .lcd{font-family:'VT323',monospace;font-size:24px;line-height:1.05;color:var(--grn);background:#05040f;border:2px solid #000;border-radius:8px;padding:10px 14px;text-shadow:0 0 6px rgba(90,209,95,.6);white-space:nowrap}\r\n.rfd .lcd small{font-size:17px;color:#3f8f43;display:block}\r\n.rfd .nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}\r\n.rfd .nav a{font-size:13px;font-weight:600;color:var(--muted);border:2px solid var(--line);background:var(--panel);border-radius:999px;padding:6px 12px;transition:color .15s,border-color .15s}\r\n.rfd .nav a:hover{color:#fff;border-color:var(--c64l)}\r\n\r\n\/* ricerca *\/\r\n.rfd .term{background:var(--c64);border:10px solid var(--c64l);border-radius:12px;padding:12px 16px;box-shadow:0 0 0 3px #000,0 18px 40px rgba(0,0,0,.45);position:relative}\r\n.rfd .term::after{content:\"\";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.14) 0 1px,transparent 1px 3px)}\r\n.rfd .term label{display:block;font-family:'VT323',monospace;font-size:20px;color:var(--ink)}\r\n.rfd .qrow{display:flex;align-items:center;gap:10px}\r\n.rfd .qrow span{font-family:'VT323',monospace;font-size:28px;color:#fff}\r\n.rfd .q{flex:1;min-width:0;background:transparent;border:0;outline:0;font-family:'VT323',monospace!important;font-size:28px;color:#fff;caret-color:#fff;padding:2px 0;text-transform:uppercase}\r\n.rfd .q::placeholder{color:#8e86e0;text-transform:none}\r\n.rfd .results{display:grid;gap:6px;margin-top:10px}\r\n.rfd .res{display:flex;gap:10px;align-items:center;text-align:left;background:var(--panel);border:2px solid var(--line);border-radius:10px;padding:10px 12px;color:#fff;font-size:14px}\r\n.rfd .res:hover,.rfd .res:focus-visible{border-color:var(--yel);outline:0}\r\n.rfd .res .tp{font-family:'Press Start 2P',monospace;font-size:7px;padding:4px 6px;border-radius:4px;background:var(--c64l);color:#15102e;flex:none}\r\n.rfd .res .tp.d{background:var(--grn)}\r\n.rfd .res mark{background:var(--yel);color:#15102e;border-radius:2px;padding:0 1px}\r\n\r\n\/* schermate tipiche *\/\r\n.rfd .screens{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}\r\n.rfd .scard{display:flex;flex-direction:column;align-items:stretch!important;gap:10px;text-align:left;background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:12px;transition:transform .18s,border-color .18s,box-shadow .18s}\r\n.rfd .scard:hover,.rfd .scard:focus-visible{transform:translateY(-4px);border-color:var(--yel);box-shadow:0 12px 28px rgba(0,0,0,.45);outline:0}\r\n.rfd .tv{position:relative;width:100%;aspect-ratio:4\/3;border-radius:10px;background:#111;padding:6%;box-shadow:inset 0 0 0 3px #000;container-type:inline-size;overflow:hidden}\r\n.rfd .tv::after{content:\"\";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px),radial-gradient(ellipse at center,transparent 60%,rgba(0,0,0,.45) 100%)}\r\n.rfd .scr{position:absolute;inset:0;background:#7c70da;padding:9% 7%}\r\n.rfd .scr .in{width:100%;height:100%;background:#3e31a2;color:#b3abff;font-family:'VT323',monospace;font-size:4.7cqw;line-height:1.02;white-space:pre;overflow:hidden;padding:1% 1.5%}\r\n.rfd .scr.black,.rfd .scr.black .in{background:#000}\r\n.rfd .scr.nosig{background:#000;display:flex;align-items:center;justify-content:center}\r\n.rfd .scr.nosig b{font-family:'Inter',sans-serif;font-size:5.5cqw;color:#fff;background:#1d4fd8;padding:3% 6%;border-radius:4px}\r\n.rfd .scr.jail .in{background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.09) 0 2.5%,transparent 2.5% 6%)}\r\n.rfd .scard b{font-size:14.5px;color:#fff;line-height:1.3}\r\n.rfd .scard small{font-size:12.5px;color:var(--muted);line-height:1.4}\r\n.rfd .scard .go{font-family:'Press Start 2P',monospace;font-size:8px;color:var(--yel);margin-top:auto}\r\n\r\n\/* diagnosi guidata *\/\r\n.rfd .wiz{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}\r\n.rfd .crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px}\r\n.rfd .crumbs button{background:none;border:0;color:var(--cya);padding:2px 0;font-weight:600}\r\n.rfd .crumbs button:hover{text-decoration:underline}\r\n.rfd .crumbs span{color:var(--muted)}\r\n.rfd .crumbs .here{color:#fff;font-weight:700}\r\n.rfd .c64{background:var(--c64);border:16px solid var(--c64l);border-radius:14px;padding:20px 22px;box-shadow:0 0 0 3px #000,0 24px 50px rgba(0,0,0,.5);position:relative;color:var(--ink);font-family:'VT323',monospace}\r\n.rfd .c64::after{content:\"\";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 1px,transparent 1px 3px)}\r\n.rfd .c64 .ready{font-size:22px;margin-bottom:6px}\r\n.rfd .c64 .qq{font-size:clamp(22px,2.6vw,28px);line-height:1.2;color:#fff;margin-bottom:14px}\r\n.rfd .c64 .info{background:rgba(0,0,0,.22);border:2px dashed var(--ink);border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:19px;line-height:1.25}\r\n.rfd .c64 .info b{display:block;color:#fff;margin-bottom:4px;font-weight:400}\r\n.rfd .opts{display:grid;gap:8px;position:relative;z-index:1}\r\n.rfd .opt{display:flex;gap:12px;align-items:baseline;text-align:left;background:transparent;border:2px solid var(--ink);border-radius:6px;padding:8px 12px;color:#fff;font-family:'VT323',monospace!important;font-size:21px;line-height:1.15;transition:background .1s,color .1s}\r\n.rfd .opt:hover,.rfd .opt:focus-visible{background:var(--ink);color:var(--c64);outline:0}\r\n.rfd .opt .n{flex:none;color:var(--yel)}\r\n.rfd .opt:hover .n,.rfd .opt:focus-visible .n{color:var(--c64)}\r\n.rfd .cur{display:inline-block;width:.55em;height:1em;background:currentColor;vertical-align:-.12em;animation:rfd-blink 1s steps(1) infinite}\r\n@keyframes rfd-blink{50%{opacity:0}}\r\n.rfd .acts{display:flex;flex-wrap:wrap;gap:10px}\r\n.rfd .btn{display:inline-flex;align-items:center;gap:8px;font-family:'Press Start 2P',monospace;font-size:9px;padding:12px 14px;border-radius:8px;border:2px solid var(--line);background:rgba(255,255,255,.04);color:#fff;transition:transform .12s,filter .12s}\r\n.rfd .btn:hover{transform:translateY(-2px);filter:brightness(1.15)}\r\n.rfd .btn.y{background:var(--yel);border-color:var(--yel);color:#231a00;box-shadow:0 4px 0 #a07d00}\r\n.rfd .btn.r{background:#ff0000;border-color:#ff0000;color:#fff;box-shadow:0 4px 0 #8a0000}\r\n\r\n\/* risultato *\/\r\n.rfd .dg{display:grid;gap:14px}\r\n.rfd .dg-head{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;background:var(--panel);border:2px solid var(--line);border-left:8px solid var(--sev);border-radius:12px;padding:16px 18px}\r\n.rfd .dg-head h3{font-size:clamp(18px,2.2vw,23px);color:#fff;line-height:1.3}\r\n.rfd .sev{font-family:'Press Start 2P',monospace;font-size:8px;padding:6px 8px;border-radius:4px;background:var(--sev);color:#15102e;white-space:nowrap}\r\n.rfd .cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}\r\n.rfd .box{background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:16px 18px}\r\n.rfd .box h4{font-family:'Press Start 2P',monospace!important;font-size:9px;font-weight:400;color:var(--acc,var(--yel));margin-bottom:12px;letter-spacing:.04em}\r\n.rfd .box ul{list-style:none;display:grid;gap:7px}\r\n.rfd .box li{font-size:14.5px;color:#dcd8f6;padding-left:18px;position:relative}\r\n.rfd .box li::before{content:\"\u25b8\";position:absolute;left:0;color:var(--acc,var(--yel))}\r\n.rfd .box li.sub{padding-left:34px;color:var(--muted)}\r\n.rfd .box li.sub::before{left:18px;content:\"\u00b7\"}\r\n.rfd .box li.head{padding-left:0;color:#fff;font-weight:600;margin-top:4px}\r\n.rfd .box li.head::before{display:none}\r\n.rfd .box li.code{font-family:'VT323',monospace;font-size:19px;color:var(--grn);padding-left:18px}\r\n.rfd .box li.code::before{content:\">\";color:var(--grn)}\r\n.rfd .box p{font-size:14.5px;color:#dcd8f6}\r\n.rfd .chips{display:flex;flex-wrap:wrap;gap:8px}\r\n.rfd .chip{display:inline-flex;align-items:center;gap:6px;border:2px solid var(--line);background:#15113a;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:600;color:#fff;transition:border-color .15s}\r\n.rfd .chip:hover{border-color:var(--yel)}\r\n.rfd .chip .u{font-family:'VT323',monospace;font-size:17px;color:var(--grn)}\r\n.rfd .tools{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}\r\n.rfd .tool{display:flex;gap:10px;align-items:center;background:#15113a;border:2px solid var(--line);border-radius:10px;padding:8px 10px;font-size:13.5px;color:#fff}\r\n.rfd .tool svg{width:26px;height:26px;flex:none}\r\n.rfd .links{display:flex;flex-wrap:wrap;gap:10px}\r\n\r\n\/* mappa chip *\/\r\n.rfd .tabs{display:flex;gap:8px;margin-bottom:14px}\r\n.rfd .tab{border:2px solid var(--line);background:var(--panel);border-radius:10px;padding:9px 14px;font-size:13.5px;font-weight:600;color:var(--muted)}\r\n.rfd .tab.on{border-color:var(--yel);color:#fff;background:#2a2350}\r\n.rfd .board{background:#0b3d1f;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:18px 18px;\r\n  border:3px solid #062612;border-radius:14px;padding:18px;display:grid;gap:16px}\r\n.rfd .grp b{display:block;font-family:'Press Start 2P',monospace;font-size:8px;color:#a8f0b8;margin-bottom:8px}\r\n.rfd .grp .row{display:flex;flex-wrap:wrap;gap:10px}\r\n.rfd .ic{position:relative;min-width:116px;flex:1 1 116px;max-width:200px;text-align:left;background:#151515;border:2px solid #000;border-radius:4px;padding:10px 10px 10px 14px;color:#e8e8e8;\r\n  box-shadow:0 3px 0 #000;transition:transform .15s,box-shadow .15s,outline-color .15s;outline:3px solid transparent;outline-offset:2px}\r\n.rfd .ic::before{content:\"\";position:absolute;left:5px;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:#444}\r\n.rfd .ic::after{content:\"\";position:absolute;left:0;right:0;top:-5px;height:4px;background:repeating-linear-gradient(90deg,#c9c9c9 0 4px,transparent 4px 9px)}\r\n.rfd .ic .u{font-family:'VT323',monospace;font-size:20px;color:var(--grn);line-height:1}\r\n.rfd .ic .p{display:block;font-size:12.5px;font-weight:700;color:#fff;margin-top:2px}\r\n.rfd .ic .r{display:block;font-size:11.5px;color:#9a9a9a}\r\n.rfd .ic:hover{transform:translateY(-2px)}\r\n.rfd .ic.hot{outline-color:var(--yel);box-shadow:0 0 0 2px var(--yel),0 0 18px rgba(255,210,63,.55);animation:rfd-hot 1.2s ease-in-out infinite}\r\n@keyframes rfd-hot{50%{box-shadow:0 0 0 2px var(--yel),0 0 6px rgba(255,210,63,.2)}}\r\n.rfd .icinfo{margin-top:12px;background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:14px 16px;font-size:14.5px;color:#dcd8f6;min-height:64px}\r\n.rfd .icinfo b{color:#fff}\r\n\r\n\/* schede (periferiche, attrezzatura, link) *\/\r\n.rfd .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}\r\n.rfd .card{display:flex;flex-direction:column;gap:8px;background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:16px;transition:border-color .15s,transform .15s}\r\n.rfd a.card:hover{border-color:var(--c64l);transform:translateY(-3px)}\r\n.rfd .card .ct{display:flex;gap:12px;align-items:center}\r\n.rfd .card svg{width:34px;height:34px;flex:none}\r\n.rfd .card h4{font-size:15px;color:#fff;line-height:1.3}\r\n.rfd .card .tag{font-size:11px;font-weight:700;color:var(--acc,var(--c64l));text-transform:uppercase;letter-spacing:.05em}\r\n.rfd .card p{font-size:13.5px;color:var(--muted)}\r\n.rfd .card .dom{font-size:11.5px;color:#6f68a8;margin-top:auto}\r\n.rfd .warn{display:flex;gap:12px;align-items:flex-start;background:#2a0c14;border:2px solid #7a1d33;border-radius:12px;padding:14px 16px;font-size:14px;color:#ffd6e0;margin-top:16px}\r\n.rfd .warn b{color:#fff}\r\n.rfd .foot{margin-top:40px;font-size:13px;color:var(--muted);text-align:center}\r\n.rfd .toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:#000;border:2px solid var(--grn);color:var(--grn);font-family:'VT323',monospace;font-size:20px;padding:8px 14px;border-radius:8px;opacity:0;transition:opacity .25s;pointer-events:none;z-index:50}\r\n.rfd .toast.show{opacity:1}\r\n\r\n@media (max-width:1024px){.rfd .screens{grid-template-columns:repeat(3,1fr)}.rfd .cards{grid-template-columns:repeat(2,1fr)}}\r\n@media (max-width:760px){\r\n  .rfd .screens{grid-template-columns:repeat(2,1fr);gap:12px}\r\n  .rfd .cols{grid-template-columns:1fr}\r\n  .rfd .c64{border-width:10px;padding:14px}\r\n  .rfd .q,.rfd .qrow span{font-size:23px}\r\n}\r\n@media (max-width:480px){\r\n  .rfd{padding:30px 0 50px}\r\n  .rfd .wrap{padding:0 14px}\r\n  .rfd .cards{grid-template-columns:1fr}\r\n  .rfd .term{border-width:7px;padding:10px 12px}\r\n  .rfd .ic{min-width:46%;max-width:none}\r\n}\r\n@media (prefers-reduced-motion:reduce){.rfd *{transition:none!important}.rfd .ic.hot{animation:none}}\r\n\/* riga del contatore visite (Post Views) prima del footer: diventa un separatore *\/\r\nbody:has(.rfd) .post-views.entry-meta{display:block;margin:0;padding:7px 16px;text-align:center;\r\n  font:12px\/1.4 'Inter',system-ui,sans-serif;color:#aaa5d8;background:#0f0c24;border-top:2px solid #342c74;border-bottom:2px solid #5ad15f}\r\n\/* barra di scelta del computer (in cima alle guide) *\/\r\n.rfd .mach{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:26px;padding:12px 14px;background:var(--bg2);border:2px solid var(--line);border-radius:14px}\r\n.rfd .mach-t{font-family:'Press Start 2P',monospace;font-size:9px;line-height:1.6;color:var(--yel);margin-right:auto}\r\n.rfd .mach-l{display:flex;flex-wrap:wrap;gap:10px}\r\n.rfd .mach a{display:flex;align-items:center;gap:10px;min-width:150px;background:var(--panel);border:2px solid var(--line);border-radius:10px;padding:7px 12px 7px 9px;transition:transform .15s,border-color .15s,box-shadow .15s}\r\n.rfd .mach a:hover,.rfd .mach a:focus-visible{transform:translateY(-2px);border-color:var(--c64l);outline:0}\r\n.rfd .mach a.on{border-color:var(--yel);background:#2a2350;box-shadow:0 0 0 2px rgba(255,210,63,.25)}\r\n.rfd .mach svg{width:74px;height:30px;flex:none;filter:drop-shadow(0 2px 0 #000)}\r\n.rfd .mach b{display:block;font-family:'Press Start 2P',monospace;font-size:10px;color:#fff;font-weight:400;line-height:1.4}\r\n.rfd .mach small{display:block;font-size:11px;color:var(--muted);line-height:1.3}\r\n.rfd .mach a.on small::after{content:\" \u00b7 sei qui\";color:var(--yel);font-weight:700}\r\n@media (max-width:760px){.rfd .mach-t{width:100%;margin:0}.rfd .mach-l{width:100%}.rfd .mach a{flex:1 1 30%;min-width:0;flex-direction:column;gap:6px;padding:8px 6px;text-align:center}.rfd .mach a.on small::after{content:\"\"}}\r\n\r\n.rfd{--c64:#0055aa;--c64l:#ff8800;--ink:#ffffff}\r\n.rfd .dgx{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\r\n.rfd .dgx .box h4{font-size:15px;color:#fff;margin:0 0 8px}\r\n.rfd .dgx .box p,.rfd .dgx .box li{font-size:14px;line-height:1.5;color:var(--muted,#c9c4ee)}\r\n.rfd .dgx .box ol,.rfd .dgx .box ul{margin:0;padding-left:20px}\r\n.rfd .dgx .box li{margin:4px 0}\r\n.rfd .dgx .box code{font-family:'VT323',monospace;font-size:17px;color:#7dff8a;background:#07060f;border-radius:4px;padding:0 5px}\r\n.rfd .pins{width:100%;border-collapse:collapse;font-size:14px;margin:6px 0 10px}\r\n.rfd .pins th,.rfd .pins td{border:1px solid var(--line);padding:6px 8px;text-align:left}\r\n.rfd .pins th{background:#0055aa;color:#fff;font-weight:600}\r\n.rfd .pins td{color:#eceaff}\r\n.rfd .pins td b{color:#ff8800}\r\n.rfd .dgx a{color:#3fd8ff;text-decoration:underline}\r\n@media (max-width:760px){.rfd .dgx{grid-template-columns:1fr}}\r\n<\/style>\r\n\r\n<div class=\"rfd\" id=\"rfd\">\r\n  <div class=\"stripe\"><\/div>\r\n  <div class=\"wrap\">\r\n    <nav class=\"mach\" aria-label=\"Scegli il computer\">\r\n      <span class=\"mach-t\">RIPARA IL TUO COMMODORE CON L'AI<\/span>\r\n      <div class=\"mach-l\"><a href=\"\/guasti-commodore-vic-20\/\"><span><svg viewBox=\"0 0 34 14\" shape-rendering=\"crispEdges\" aria-hidden=\"true\"><rect x=\"1\" y=\"4\" width=\"32\" height=\"9\" fill=\"#efe6cf\"\/><rect x=\"1\" y=\"12\" width=\"32\" height=\"1\" fill=\"#b9ae93\"\/><rect x=\"1\" y=\"4\" width=\"32\" height=\"1\" fill=\"#fffaf0\"\/><rect x=\"3\" y=\"5\" width=\"1\" height=\"1\" fill=\"#f94144\"\/><rect x=\"4\" y=\"5\" width=\"1\" height=\"1\" fill=\"#f8961e\"\/><rect x=\"5\" y=\"5\" width=\"1\" height=\"1\" fill=\"#ffd23f\"\/><rect x=\"6\" y=\"5\" width=\"1\" height=\"1\" fill=\"#5ad15f\"\/><rect x=\"7\" y=\"5\" width=\"1\" height=\"1\" fill=\"#3fd8ff\"\/><rect x=\"3\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"6\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"9\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"12\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"15\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"18\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"21\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"24\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"4\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"7\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"10\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"13\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"16\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"19\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"22\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"25\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"3\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"6\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"9\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"12\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"15\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"18\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"21\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"24\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"29\" y=\"7\" width=\"2\" height=\"1\" fill=\"#e8a33d\"\/><rect x=\"29\" y=\"9\" width=\"2\" height=\"1\" fill=\"#e8a33d\"\/><rect x=\"29\" y=\"11\" width=\"2\" height=\"1\" fill=\"#e8a33d\"\/><\/svg><\/span><span><b>VIC-20<\/b><small>1980 \u00b7 VIC-I<\/small><\/span><\/a><a href=\"\/guasti-commodore-64\/\"><span><svg viewBox=\"0 0 34 14\" shape-rendering=\"crispEdges\" aria-hidden=\"true\"><rect x=\"2\" y=\"3\" width=\"30\" height=\"1\" fill=\"#b3a387\"\/><rect x=\"1\" y=\"4\" width=\"32\" height=\"8\" fill=\"#9c8c74\"\/><rect x=\"1\" y=\"12\" width=\"32\" height=\"1\" fill=\"#6e6250\"\/><rect x=\"3\" y=\"5\" width=\"1\" height=\"1\" fill=\"#f94144\"\/><rect x=\"4\" y=\"5\" width=\"1\" height=\"1\" fill=\"#f8961e\"\/><rect x=\"5\" y=\"5\" width=\"1\" height=\"1\" fill=\"#ffd23f\"\/><rect x=\"6\" y=\"5\" width=\"1\" height=\"1\" fill=\"#5ad15f\"\/><rect x=\"7\" y=\"5\" width=\"1\" height=\"1\" fill=\"#3fd8ff\"\/><rect x=\"3\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"6\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"9\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"12\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"15\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"18\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"21\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"24\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"4\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"7\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"10\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"13\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"16\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"19\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"22\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"25\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"3\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"6\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"9\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"12\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"15\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"18\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"21\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"24\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"29\" y=\"7\" width=\"2\" height=\"1\" fill=\"#c9bba0\"\/><rect x=\"29\" y=\"9\" width=\"2\" height=\"1\" fill=\"#c9bba0\"\/><rect x=\"29\" y=\"11\" width=\"2\" height=\"1\" fill=\"#c9bba0\"\/><\/svg><\/span><span><b>C64<\/b><small>1982 \u00b7 VIC-II \/ SID<\/small><\/span><\/a><a href=\"\/guasti-commodore-128\/\"><span><svg viewBox=\"0 0 68 28\" shape-rendering=\"crispEdges\" aria-hidden=\"true\"><rect x=\"2\" y=\"3\" width=\"64\" height=\"6\" fill=\"#8e897b\"\/><rect x=\"2\" y=\"3\" width=\"64\" height=\"1\" fill=\"#a6a193\"\/><rect x=\"55\" y=\"5\" width=\"2\" height=\"1\" fill=\"#5ad15f\"\/><rect x=\"58\" y=\"5\" width=\"2\" height=\"1\" fill=\"#f94144\"\/><rect x=\"2\" y=\"9\" width=\"64\" height=\"1\" fill=\"#6e6a5f\"\/><rect x=\"2\" y=\"10\" width=\"64\" height=\"4\" fill=\"#b8b09a\"\/><rect x=\"6\" y=\"11\" width=\"2\" height=\"2\" fill=\"#f94144\"\/><rect x=\"8\" y=\"11\" width=\"2\" height=\"2\" fill=\"#f8961e\"\/><rect x=\"10\" y=\"11\" width=\"2\" height=\"2\" fill=\"#ffd23f\"\/><rect x=\"12\" y=\"11\" width=\"2\" height=\"2\" fill=\"#5ad15f\"\/><rect x=\"14\" y=\"11\" width=\"2\" height=\"2\" fill=\"#3fd8ff\"\/><rect x=\"56\" y=\"11\" width=\"4\" height=\"2\" fill=\"#d8d0bb\"\/><rect x=\"2\" y=\"14\" width=\"64\" height=\"1\" fill=\"#6e6a5f\"\/><rect x=\"2\" y=\"15\" width=\"64\" height=\"11\" fill=\"#ece4c6\"\/><rect x=\"2\" y=\"26\" width=\"64\" height=\"1\" fill=\"#b9ae93\"\/><rect x=\"5\" y=\"16\" width=\"42\" height=\"9\" fill=\"#2b241b\"\/><rect x=\"6\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"9\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"12\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"15\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"18\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"21\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"24\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"27\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"30\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"33\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"36\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"39\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"42\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"7\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"10\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"13\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"16\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"19\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"22\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"25\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"28\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"31\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"34\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"37\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"40\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"6\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"9\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"12\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"15\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"18\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"21\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"24\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"27\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"30\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"33\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"36\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"39\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"42\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"15\" y=\"23\" width=\"20\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"50\" y=\"16\" width=\"13\" height=\"9\" fill=\"#2b241b\"\/><rect x=\"51\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"54\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"57\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"60\" y=\"17\" width=\"2\" height=\"1\" fill=\"#8e897b\"\/><rect x=\"51\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"54\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"57\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"60\" y=\"19\" width=\"2\" height=\"1\" fill=\"#8e897b\"\/><rect x=\"51\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"54\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"57\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"60\" y=\"21\" width=\"2\" height=\"1\" fill=\"#8e897b\"\/><rect x=\"51\" y=\"23\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"54\" y=\"23\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"57\" y=\"23\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"60\" y=\"23\" width=\"2\" height=\"1\" fill=\"#8e897b\"\/><\/svg><\/span><span><b>C128<\/b><small>1985 \u00b7 Z80 + 8502<\/small><\/span><\/a><a href=\"\/guasti-amiga\/\"><span><svg viewBox=\"0 0 34 14\" shape-rendering=\"crispEdges\" aria-hidden=\"true\"><rect x=\"1\" y=\"4\" width=\"32\" height=\"9\" fill=\"#ece6d3\"\/><rect x=\"1\" y=\"12\" width=\"32\" height=\"1\" fill=\"#b9b19a\"\/><rect x=\"1\" y=\"4\" width=\"32\" height=\"1\" fill=\"#fffaf0\"\/><rect x=\"3\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"6\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"9\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"12\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"15\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"18\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"21\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"24\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"4\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"7\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"10\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"13\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"16\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"19\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"22\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"3\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"6\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"9\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"12\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"15\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"18\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"21\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"24\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"7\" y=\"11\" width=\"12\" height=\"1\" fill=\"#55524a\"\/><rect x=\"28\" y=\"6\" width=\"3\" height=\"1\" fill=\"#ff8800\"\/><rect x=\"28\" y=\"8\" width=\"1\" height=\"1\" fill=\"#0055aa\"\/><rect x=\"30\" y=\"8\" width=\"1\" height=\"1\" fill=\"#5ad15f\"\/><\/svg><\/span><span><b>Amiga<\/b><small>500 \u00b7 600 \u00b7 1200<\/small><\/span><\/a><\/div>\r\n    <\/nav>\r\n    <div class=\"top\">\r\n      <div>\r\n        <span class=\"kicker\">GUASTI AMIGA<\/span>\r\n        <h2 class=\"h2\">Amiga Doctor: trova il guasto<\/h2>\r\n        <p class=\"sub\">Parti da quello che vedi sullo schermo o rispondi a qualche domanda: ti diciamo quali chip controllare, che attrezzatura serve e come procedere. Funziona per Amiga 500, 500 Plus, 600 e 1200 (e in buona parte per 1000, 2000 e CD32), con Kickstart dall&#x27;1.2 al 3.x.<\/p>\r\n      <\/div>\r\n      <div class=\"lcd\" id=\"rfdCount\">--- DIAGNOSI<small>SYSTEM READY.<\/small><\/div>\r\n    <\/div>\r\n    <nav class=\"nav\" aria-label=\"Sezioni della pagina\">\r\n      <a href=\"#rfd-schermi\">\ud83d\udcfa Schermate<\/a><a href=\"#rfd-diagnosi\">\ud83e\ude7a Diagnosi guidata<\/a><a href=\"#rfd-chip\">\ud83d\udd32 Mappa chip<\/a>\r\n      <a href=\"#rfd-periferiche\">\ud83d\udd79 Periferiche di test<\/a><a href=\"#rfd-attrezzi\">\ud83d\udd27 Attrezzatura<\/a><a href=\"#rfd-schemi\">\ud83d\udcd0 Schemi e documenti<\/a><a href=\"#rfd-diagrom\">\ud83e\uddea DiagROM e seriale<\/a>\r\n    <\/nav>\r\n\r\n    <div class=\"term\">\r\n      <label for=\"rfdQ\">1&gt; SEARCH SINTOMO<\/label>\r\n      <div class=\"qrow\"><span aria-hidden=\"true\">&gt;<\/span>\r\n        <input class=\"q\" id=\"rfdQ\" type=\"search\" placeholder=\"es. schermo verde, Guru, Agnus, DiagROM, Caps Lock, Varta, condensatori\u2026\" autocomplete=\"off\" spellcheck=\"false\">\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"results\" id=\"rfdRes\"><\/div>\r\n\r\n    <!-- schermate tipiche -->\r\n    <section id=\"rfd-schermi\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">COSA VEDI SULLO SCHERMO?<\/span>\r\n        <h3 class=\"h3\">Riconosci il guasto dalla schermata<\/h3>\r\n        <p class=\"sub\">Simulazioni dei sintomi pi\u00f9 comuni. Clicca su quella che somiglia al tuo schermo per andare alla diagnosi.<\/p>\r\n      <\/div>\r\n      <div class=\"screens\" id=\"rfdScreens\"><\/div>\r\n    <\/section>\r\n\r\n    <!-- diagnosi guidata -->\r\n    <section id=\"rfd-diagnosi\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">DIAGNOSI GUIDATA<\/span>\r\n        <h3 class=\"h3\">Rispondi alle domande<\/h3>\r\n        <p class=\"sub\">Puoi cliccare le risposte o premere i tasti 1-9. Il percorso fatto resta in alto e puoi tornare a qualsiasi passo.<\/p>\r\n      <\/div>\r\n      <div class=\"wiz\">\r\n        <div class=\"crumbs\" id=\"rfdCrumbs\"><\/div>\r\n        <div id=\"rfdStep\"><\/div>\r\n        <div class=\"acts\">\r\n          <button class=\"btn\" id=\"rfdBack\" type=\"button\">\u25c0 INDIETRO<\/button>\r\n          <button class=\"btn\" id=\"rfdRestart\" type=\"button\">\u21ba RICOMINCIA<\/button>\r\n          <button class=\"btn\" id=\"rfdShare\" type=\"button\">\ud83d\udd17 COPIA LINK<\/button>\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n    <!-- mappa chip -->\r\n    <section id=\"rfd-chip\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">MAPPA DEI CHIP<\/span>\r\n        <h3 class=\"h3\">I chip principali dell&#x27;Amiga<\/h3>\r\n        <p class=\"sub\">Raggruppati per funzione (non \u00e8 la disposizione fisica sulla scheda). Clicca un chip per sapere cosa fa e quali sintomi d\u00e0 quando si guasta. Nella diagnosi, i chip coinvolti si illuminano.<\/p>\r\n      <\/div>\r\n      <div class=\"tabs\" role=\"tablist\" id=\"rfdTabs\"><\/div>\r\n      <div class=\"board\" id=\"rfdBoard\"><\/div>\r\n      <div class=\"icinfo\" id=\"rfdIcInfo\">Seleziona un chip per vedere i dettagli.<\/div>\r\n    <\/section>\r\n\r\n    <!-- periferiche di test -->\r\n    <section id=\"rfd-periferiche\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">PERIFERICHE CHE AIUTANO<\/span>\r\n        <h3 class=\"h3\">Cartucce di test e strumenti di diagnosi<\/h3>\r\n        <p class=\"sub\">Con questi strumenti la ricerca del guasto diventa molto pi\u00f9 veloce, e alla fine puoi fare un collaudo completo.<\/p>\r\n      <\/div>\r\n      <div class=\"cards\" id=\"rfdPeriph\"><\/div>\r\n    <\/section>\r\n\r\n    <!-- attrezzatura -->\r\n    <section id=\"rfd-attrezzi\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">ATTREZZATURA<\/span>\r\n        <h3 class=\"h3\">Cosa serve sul banco di lavoro<\/h3>\r\n        <p class=\"sub\">Non serve tutto subito: ogni diagnosi ti indica cosa ti occorre per quel tipo di guasto.<\/p>\r\n      <\/div>\r\n      <div class=\"cards\" id=\"rfdTools\"><\/div>\r\n      <div class=\"warn\">\u26a0\ufe0f <span><b>Sicurezza.<\/b> Prima di aprire l&#x27;Amiga scollega l&#x27;alimentatore. Se trovi la batteria al nichel (il cilindretto blu o verde Varta) toglila subito, anche se il computer funziona: l&#x27;acido corrode piste e zoccoli. Misura l&#x27;alimentatore prima di collegarlo: +5 V tra 4,9 e 5,2 V, +12 V e -12 V.<\/span><\/div>\r\n    <\/section>\r\n\r\n    <!-- DiagROM e cavo seriale -->\r\n    <section id=\"rfd-diagrom\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">DIAGNOSTICA AVANZATA<\/span>\r\n        <h3 class=\"h3\">ROM di test, cavo seriale e cosa fare se non parte nulla<\/h3>\r\n        <p class=\"sub\">Quando l'Amiga resta su uno schermo nero o colorato, una ROM di diagnostica al posto del Kickstart dice cosa non va. E se lo schermo non funziona, i risultati si leggono sul PC con un cavo seriale da tre fili.<\/p>\r\n      <\/div>\r\n      <div class=\"dgx\">\r\n        <div class=\"box\">\r\n          <h4>1. Le ROM e i dischetti di test<\/h4>\r\n          <ul>\r\n            <li><b>DiagROM<\/b> (gratuita, di John \"Chucky\" Hertell): si masterizza su EPROM e si monta al posto del Kickstart. <a href=\"https:\/\/www.diagrom.com\/index.php\/download\/\" target=\"_blank\" rel=\"noopener\">Download<\/a> \u00b7 <a href=\"https:\/\/github.com\/ChuckyGang\/DiagROMV2\" target=\"_blank\" rel=\"noopener\">GitHub<\/a><\/li>\r\n            <li><b>Amiga Test Kit<\/b> (gratuito, di Keir Fraser): dischetto di collaudo che parte anche da Gotek. Serve un Amiga che arrivi a chiedere il dischetto. <a href=\"https:\/\/github.com\/keirf\/amiga-stuff\/releases\" target=\"_blank\" rel=\"noopener\">Download<\/a><\/li>\r\n            <li><b>kickconv<\/b>, nello stesso progetto di Amiga Test Kit: inverte l'ordine dei byte, divide le immagini a 32 bit in alta e bassa e corregge il checksum, per masterizzare le ROM senza errori.<\/li>\r\n          <\/ul>\r\n          <h4 style=\"margin-top:12px\">Come montare DiagROM<\/h4>\r\n          <ul>\r\n            <li><b>A500, A500 Plus, A600, A2000:<\/b> una sola ROM a 16 bit. Si usa una EPROM 27C400 (o 27C800\/27C160 con adattatore), con la tacca nello stesso verso del Kickstart. Vedi <a href=\"\/rom-e-adattatori\/\">ROM e adattatori<\/a>.<\/li>\r\n            <li><b>A1200, A3000, A4000:<\/b> due ROM, alta e bassa, che insieme fanno 32 bit. Scambiarle d\u00e0 lo schermo rosso o niente.<\/li>\r\n            <li>Togli prima tutte le espansioni e, finita la diagnosi, rimonta il Kickstart originale.<\/li>\r\n          <\/ul>\r\n        <\/div>\r\n        <div class=\"box\">\r\n          <h4>2. Il cavo seriale da costruire<\/h4>\r\n          <p>Serve un adattatore USB-RS232 con un vero connettore DB9 a livelli RS-232 (non i moduli TTL a 3,3 o 5 V) e un connettore DB25 femmina per la porta seriale dell'Amiga (A500, A600, A1200, A2000). Bastano tre fili, incrociati:<\/p>\r\n          <table class=\"pins\">\r\n            <tr><th>Amiga DB25 (femmina)<\/th><th>PC DB9 (adattatore USB)<\/th><\/tr>\r\n            <tr><td><b>2<\/b> TXD, dati in uscita<\/td><td><b>2<\/b> RXD, dati in entrata<\/td><\/tr>\r\n            <tr><td><b>3<\/b> RXD, dati in entrata<\/td><td><b>3<\/b> TXD, dati in uscita<\/td><\/tr>\r\n            <tr><td><b>7<\/b> massa<\/td><td><b>5<\/b> massa<\/td><\/tr>\r\n          <\/table>\r\n          <p>Non collegare altri pin: sulla porta dell'Amiga ci sono anche tensioni di alimentazione e l'audio. Sull'A1000 la piedinatura \u00e8 diversa.<\/p>\r\n          <p>Sul PC apri un terminale (<b>PuTTY<\/b> o <b>Tera Term<\/b> su Windows, <code>screen \/dev\/ttyUSB0 9600<\/code> su Linux e macOS) con <b>9600 baud, 8N1, nessun controllo di flusso<\/b>. Se compaiono caratteri strani prova 19200: alcune versioni di prova di DiagROM 2.0 usavano quella velocit\u00e0.<\/p>\r\n        <\/div>\r\n        <div class=\"box\">\r\n          <h4>3. Cosa si pu\u00f2 fare con DiagROM<\/h4>\r\n          <ul>\r\n            <li>All'avvio controlla le parti di base e dice quanta chip RAM trova: se la memoria \u00e8 guasta indica l'indirizzo e i bit sbagliati, quindi il chip da cambiare.<\/li>\r\n            <li>Dal menu (con il mouse, la tastiera o dal terminale seriale): test della memoria, delle CIA (timer e porte), delle interruzioni, di tastiera, mouse e joystick, dell'audio di Paula, dei drive e dell'orologio.<\/li>\r\n            <li>Tutto quello che compare a schermo esce anche sulla seriale: con lo schermo nero si lavora dal PC.<\/li>\r\n            <li>Tasti da tenere premuti all'accensione (dalle note di DiagROM, controlla quelle della tua versione): <b>tasto sinistro del mouse<\/b> = niente schermo e uso della fast RAM se c'\u00e8 (utile con la chip RAM guasta); <b>tasto destro<\/b> = usa l'inizio del blocco di memoria invece della fine; <b>fuoco del joystick<\/b> = seriale spenta, per far partire un Amiga con Paula guasta.<\/li>\r\n          <\/ul>\r\n        <\/div>\r\n        <div class=\"box\">\r\n          <h4>4. Se non parte nemmeno DiagROM<\/h4>\r\n          <ol>\r\n            <li><b>La ROM:<\/b> masterizzata con l'ordine dei byte giusto (kickconv), verso della tacca, sull'A1200 le due met\u00e0 al posto giusto. Prova la stessa EPROM su un altro Amiga, se puoi.<\/li>\r\n            <li><b>Le espansioni:<\/b> tutte fuori, compresa la memoria nella botola.<\/li>\r\n            <li><b>L'alimentazione:<\/b> +5 V sulla scheda tra 4,9 e 5,2 V con il computer acceso.<\/li>\r\n            <li><b>Reset e clock:<\/b> \/RESET deve salire e restare alto; il quarzo (28 MHz sui PAL) e il clock della CPU devono esserci. \/HALT basso fisso = la CPU si \u00e8 fermata per un errore grave.<\/li>\r\n            <li><b>La CPU legge?<\/b> Con la sonda logica guarda le linee di indirizzo e \/AS: se non si muovono, sospetta CPU, Gary (Gayle), Agnus (Alice) e i contatti degli zoccoli.<\/li>\r\n            <li><b>La CIA-A:<\/b> all'avvio fa apparire la ROM all'indirizzo zero (linea \/OVL). Se \u00e8 guasta l'Amiga non parte nemmeno con DiagROM: provane una di ricambio.<\/li>\r\n            <li><b>Schermo che cambia ma niente sul PC:<\/b> cavo e adattatore, driver 1488\/1489 della seriale, oppure Paula (prova a tenere premuto il fuoco del joystick all'accensione).<\/li>\r\n            <li><b>Corrosione:<\/b> su A500 Plus (batteria) e su A600 e A1200 (condensatori) controlla le piste attorno a CPU, ROM e CIA.<\/li>\r\n          <\/ol>\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n    <!-- schemi -->\r\n    <section id=\"rfd-schemi\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">SCHEMI E DOCUMENTAZIONE<\/span>\r\n        <h3 class=\"h3\">Per chi vuole riparare da solo<\/h3>\r\n        <p class=\"sub\">Schemi elettrici, manuali di servizio e le comunit\u00e0 dove chiedere aiuto.<\/p>\r\n      <\/div>\r\n      <div class=\"cards\" id=\"rfdDocs\"><\/div>\r\n    <\/section>\r\n\r\n    <p class=\"foot\">Questo strumento d\u00e0 indicazioni generali basate sui guasti pi\u00f9 comuni. Per riparazioni complesse chiedi a un tecnico esperto o alla community Amiga (per esempio English Amiga Board).<\/p>\r\n  <\/div>\r\n  <div class=\"toast\" id=\"rfdToast\" role=\"status\"><\/div>\r\n<\/div>\r\n\r\n<script type=\"application\/json\" id=\"rfdData\">{\"start\":{\"question\":\"Qual \u00e8 il problema principale del tuo Amiga?\",\"options\":[{\"label\":\"Schermo nero \/ nessuna immagine\",\"next\":\"black\"},{\"label\":\"Lo schermo resta di un colore (grigio, rosso, verde, blu, giallo)\",\"next\":\"colors\"},{\"label\":\"Chiede il dischetto ma non parte niente\",\"next\":\"floppyBoot\"},{\"label\":\"Guru Meditation, blocchi o riavvii\",\"next\":\"guru\"},{\"label\":\"Colori sbagliati, righe o immagine in bianco e nero\",\"next\":\"video\"},{\"label\":\"Nessun suono o audio disturbato\",\"next\":\"audio\"},{\"label\":\"Tastiera (tasti morti o Caps Lock che lampeggia)\",\"next\":\"keyboard\"},{\"label\":\"Mouse o joystick\",\"next\":\"ports\"},{\"label\":\"Drive del floppy (non legge, non gira, rumori)\",\"next\":\"floppyBoot\"},{\"label\":\"Vede meno memoria del previsto\",\"next\":\"memory\"},{\"label\":\"Batteria che ha perso o corrosione\",\"next\":\"battery\"},{\"label\":\"A600, A1200, CD32: condensatori da sostituire\",\"next\":\"caps\"},{\"label\":\"Voglio usare la ROM di diagnostica (DiagROM)\",\"next\":\"diagrom\"},{\"label\":\"Ho riparato: voglio fare un collaudo completo\",\"next\":\"finalTest\"}]},\"black\":{\"question\":\"Il LED di accensione \u00e8 acceso?\",\"options\":[{\"label\":\"No, \u00e8 spento (o si accende appena)\",\"next\":\"psu\"},{\"label\":\"S\u00ec, \u00e8 acceso\",\"next\":\"blackLed\"}]},\"blackLed\":{\"question\":\"All'accensione il LED del drive DF0 si accende un attimo e poi, senza dischetto, il drive fa un piccolo \\\"clic\\\" ogni due o tre secondi?\",\"options\":[{\"label\":\"S\u00ec, fa il clic: il drive cerca il dischetto\",\"next\":\"videoOut\"},{\"label\":\"No, il drive resta fermo e muto\",\"next\":\"diagrom\"}]},\"psu\":{\"question\":null,\"diagnosis\":\"Problema di alimentazione\",\"checks\":[\"L'Amiga vuole +5 V, +12 V e -12 V in continua: sull'A500 e sull'A1200 vengono dall'alimentatore esterno, sull'A2000 da quello interno\",\"Misura sul connettore con il computer collegato: +5 V tra 4,9 e 5,2 V; se scende sotto 4,75 V l'Amiga non parte o si blocca\",\"Sull'A500 il LED di accensione si abbassa anche quando si disattiva il filtro audio: se per\u00f2 resta spento o fioco del tutto, il problema \u00e8 l'alimentazione\",\"Controlla il fusibile dell'alimentatore, il cavo e i pin del connettore (spesso ossidati o allentati)\",\"Un chip che scalda subito appena acceso indica un corto sulla scheda\"],\"solutions\":[\"Sostituisci i condensatori dell'alimentatore originale o usa un alimentatore moderno con protezione da sovratensione\",\"L'alimentatore piccolo dell'A1200 basta appena per il computer di serie: con acceleratori e hard disk serve qualcosa di pi\u00f9 robusto\",\"Se il +5 V cala solo con il computer collegato, cerca il corto con il termometro o la termocamera\"],\"severity\":\"media\"},\"videoOut\":{\"question\":null,\"diagnosis\":\"Il computer parte: il problema \u00e8 l'uscita video\",\"checks\":[\"Il clic del drive significa che il Kickstart sta girando: CPU, ROM e chip RAM fanno il loro lavoro\",\"Prova un'altra uscita: RGB (presa a 23 poli) con un monitor 1084 o un cavo SCART, composito, modulatore RF\",\"Con il cavo SCART il TV deve accettare l'RGB a 15 kHz e il cavo deve portare la commutazione RGB (pin 16) e il sincronismo\",\"Sull'A500 l'uscita composita \u00e8 solo in bianco e nero ed esce dal modulo ibrido del video: se manca solo lei, il sospettato \u00e8 il modulo\",\"Se non esce nulla da nessuna uscita: Denise (A500, A600) o Lisa (A1200), i buffer dell'RGB, l'encoder video sui modelli con composito a colori\"],\"solutions\":[\"Usa un monitor 1084 o un cavo SCART RGB fatto bene per escludere il TV\",\"Ricontrolla Denise nello zoccolo (sull'A500 si toglie e si rimette facilmente)\",\"Su A600 e A1200 guarda le piste vicino all'uscita video: i condensatori che perdono le corrodono spesso\"],\"severity\":\"media\"},\"diagrom\":{\"question\":\"Hai una DiagROM da montare al posto del Kickstart? (come prepararla e il cavo seriale sono spiegati nella sezione DiagROM pi\u00f9 in basso)\",\"options\":[{\"label\":\"S\u00ec, parte: mostra il menu o scrive sulla seriale\",\"next\":\"diagromOk\"},{\"label\":\"S\u00ec, ma non parte nemmeno lei\",\"next\":\"diagromDead\"},{\"label\":\"Non ce l'ho\",\"next\":\"noStart\"}]},\"diagromOk\":{\"question\":null,\"diagnosis\":\"Leggi i risultati di DiagROM\",\"checks\":[\"DiagROM scrive tutto sia a schermo sia sulla porta seriale (9600 baud, 8N1, senza controllo di flusso): se lo schermo \u00e8 nero leggi i messaggi sul PC\",\"Guarda prima la parte di avvio: quanta chip RAM trova e se segnala errori di memoria, con l'indirizzo e i bit che sbagliano\",\"Dal menu prova memoria, CIA, porte, tastiera, audio (Paula) e drive: ogni test dice cosa non va\",\"Un errore su un bit di chip RAM porta al chip DRAM corrispondente (sull'A500 sono nello zoccolo o saldati vicino ad Agnus)\",\"Se la memoria \u00e8 a posto ma il Kickstart vero non parte, i sospettati diventano la ROM stessa (o la coppia di ROM sull'A1200) e lo zoccolo\"],\"solutions\":[\"Sostituisci il chip indicato montando uno zoccolo\",\"Se \u00e8 tutto a posto, rimonta il Kickstart e prova con Amiga Test Kit da dischetto\",\"Conserva il registro della seriale: \u00e8 utile anche per chiedere aiuto sui forum\"],\"severity\":\"media\"},\"diagromDead\":{\"question\":null,\"diagnosis\":\"Non parte nemmeno la DiagROM\",\"checks\":[\"Controlla la DiagROM: masterizzata con l'ordine dei byte giusto, nel verso giusto (tacca), sull'A1200 le due ROM al posto giusto (alta e bassa)\",\"Togli tutte le espansioni: memoria nella botola, acceleratori, schede PCMCIA, drive esterni\",\"Misura +5 V sulla scheda e guarda il reset: all'accensione la linea \/RESET deve salire dopo un attimo e restare alta; \/HALT basso fisso indica un errore grave del processore\",\"Con l'oscilloscopio controlla il quarzo (28 MHz sui modelli PAL) e il clock della CPU (circa 7 MHz su A500 e A600, 14 MHz sull'A1200)\",\"Con la sonda logica guarda le linee di indirizzo e \/AS della CPU: se non si muovono, il processore non sta leggendo la ROM\",\"Ricontrolla gli zoccoli: Agnus nello zoccolo PLCC dell'A500, la CPU, Gary, le CIA e la ROM. La CIA-A all'avvio comanda la mappatura della ROM (\/OVL): se \u00e8 guasta l'Amiga resta fermo\",\"Se lo schermo cambia colore ma sulla seriale non arriva niente: cavo, adattatore (deve essere RS-232 vero), driver 1488\/1489, oppure Paula\"],\"solutions\":[\"Pulisci e reinserisci i chip negli zoccoli; su A600 e A1200 cerca piste corrose vicino a CPU, ROM e CIA\",\"Prova CPU, CIA e Gary su un'altra scheda funzionante o con un chip tester adatto\",\"Se la CPU non riceve il clock, risali al quarzo e ad Agnus (o Alice), che generano i clock di sistema\"],\"severity\":\"alta\"},\"noStart\":{\"question\":null,\"diagnosis\":\"Il processore non parte (senza ROM di diagnostica)\",\"checks\":[\"Togli tutte le espansioni e prova con mouse, tastiera e un solo monitor\",\"Pulisci i contatti e reinserisci Kickstart, CPU, Agnus, Gary e CIA (quelli negli zoccoli)\",\"Misura l'alimentazione sulla scheda e controlla reset e clock con l'oscilloscopio\",\"Se puoi, procurati una DiagROM: parte anche quando il Kickstart non riesce e scrive sulla seriale dove si ferma\"],\"solutions\":[\"Masterizza DiagROM su una EPROM 27C400 (A500, A600) o su due EPROM (A1200) e segui la diagnosi con quella\",\"Se dopo aver pulito gli zoccoli riparte, monta zoccoli nuovi dove i contatti erano ossidati\"],\"severity\":\"alta\"},\"colors\":{\"question\":\"Di che colore resta lo schermo?\",\"options\":[{\"label\":\"Grigio scuro\",\"next\":\"darkGrey\"},{\"label\":\"Grigio chiaro\",\"next\":\"lightGrey\"},{\"label\":\"Rosso\",\"next\":\"red\"},{\"label\":\"Verde\",\"next\":\"green\"},{\"label\":\"Blu\",\"next\":\"blue\"},{\"label\":\"Giallo\",\"next\":\"yellow\"},{\"label\":\"Bianco o grigio con la mano o il dischetto (chiede il disco)\",\"next\":\"floppyBoot\"}]},\"darkGrey\":{\"question\":null,\"diagnosis\":\"Si ferma sul grigio scuro\",\"checks\":[\"Il grigio scuro \u00e8 il primo colore che il Kickstart mette: la CPU legge la ROM, ma l'avvio si ferma subito dopo\",\"Sospetti pi\u00f9 comuni: chip RAM o Agnus (sull'A500 spesso \u00e8 solo il contatto nello zoccolo PLCC), Gary, una delle due CIA, la ROM non ben inserita\",\"Togli la memoria nella botola e ogni altra espansione\",\"Sull'A500 rev 6A controlla il ponticello della memoria (JP2): con l'espansione tolta deve stare nella posizione per 512 KB\"],\"solutions\":[\"Reinserisci Agnus con un estrattore PLCC e pulisci lo zoccolo\",\"Usa DiagROM: dice se la chip RAM risponde e quale bit sbaglia\",\"Prova le CIA scambiandole tra loro o con una di ricambio\"],\"severity\":\"alta\"},\"lightGrey\":{\"question\":null,\"diagnosis\":\"Si ferma sul grigio chiaro\",\"checks\":[\"Il grigio chiaro arriva dopo il controllo della ROM e della memoria: i test di base sono passati, ma il sistema non finisce di avviarsi\",\"Sospetti: una delle due CIA 8520 (molto comune), Gary, espansioni difettose, la tastiera o il suo connettore\",\"Con una sola ROM non adatta al modello (per esempio una Kickstart per A1200 su un A500) si ferma qui o non parte\"],\"solutions\":[\"Togli le espansioni e scollega tastiera e periferiche\",\"Prova CIA di ricambio una alla volta\",\"Avvia DiagROM: il test delle CIA segnala timer e porte che non rispondono\"],\"severity\":\"alta\"},\"red\":{\"question\":null,\"diagnosis\":\"Schermo rosso: errore della ROM Kickstart\",\"checks\":[\"Il rosso indica che il controllo della ROM (checksum) non torna\",\"Pulisci i piedini e lo zoccolo della ROM e verifica il verso\",\"Sull'A1200 (e A3000, A4000) le ROM sono due, alta e bassa: se sono scambiate o di versioni diverse lo schermo diventa rosso\",\"Se la ROM \u00e8 una EPROM masterizzata da te, controlla l'ordine dei byte dell'immagine (si corregge con kickconv) e il tipo di EPROM\"],\"solutions\":[\"Leggi la ROM con un programmatore e confrontala con l'immagine originale\",\"Masterizza un Kickstart nuovo su EPROM 27C400 (o 27C800\/27C160 con adattatore)\",\"Se la ROM \u00e8 buona ma il rosso resta: piste o zoccolo della ROM, buffer dei dati\"],\"severity\":\"media\"},\"green\":{\"question\":null,\"diagnosis\":\"Schermo verde: errore della chip RAM\",\"checks\":[\"Il verde indica un errore nella chip RAM o nel suo controllo\",\"Sull'A500 rev 6A la chip RAM sono 16 chip 41256 (512 KB); sull'A500 Plus 8 chip 44256 (1 MB); su A600 e A1200 chip saldati\",\"Agnus (Alice sull'A1200) genera gli indirizzi della chip RAM: anche lei pu\u00f2 dare il verde\",\"Con il ponticello JP2 dell'A500 rev 6A in posizione 1 MB, la memoria nella botola diventa chip RAM: toglila e rimetti il ponticello a 512 KB per escluderla\"],\"solutions\":[\"Usa DiagROM per sapere quale bit sbaglia e quindi quale chip sostituire\",\"Prova le DRAM fuori dalla scheda con un chip tester\",\"Reinserisci Agnus nel suo zoccolo prima di dissaldare le RAM\"],\"severity\":\"alta\"},\"blue\":{\"question\":null,\"diagnosis\":\"Schermo blu: errore dei chip custom\",\"checks\":[\"Il blu indica che un registro dei chip custom non risponde come dovrebbe\",\"Sospetti: Agnus, Denise o Paula (Alice, Lisa o Paula sull'A1200), o il loro contatto nello zoccolo\",\"Controlla che i chip siano quelli giusti per la scheda (per esempio Agnus da 1 MB su una scheda che non la supporta)\"],\"solutions\":[\"Reinserisci i chip custom negli zoccoli\",\"Prova i chip custom su un Amiga funzionante\",\"DiagROM aiuta a capire quale dei chip non risponde\"],\"severity\":\"alta\"},\"yellow\":{\"question\":null,\"diagnosis\":\"Schermo giallo: errore della CPU prima del Guru\",\"checks\":[\"Il giallo vuol dire che la CPU ha incontrato un errore prima che il sistema potesse mostrare il Guru Meditation\",\"La causa pi\u00f9 comune \u00e8 un'espansione: memoria nella botola guasta, acceleratore, schede sulla porta laterale\",\"Senza espansioni: CPU, ROM, chip RAM o un corto sul bus dati\"],\"solutions\":[\"Togli tutte le espansioni e riprova\",\"Se il giallo resta, usa DiagROM e guarda gli errori di memoria e di indirizzamento\",\"Ricontrolla la CPU nello zoccolo (su A500 e A2000)\"],\"severity\":\"alta\"},\"floppyBoot\":{\"question\":\"Inserendo un dischetto sicuramente buono, cosa fa il drive DF0?\",\"options\":[{\"label\":\"Niente: non gira e non fa rumore\",\"next\":\"floppyDead\"},{\"label\":\"Gira e cerca, ma non parte (o d\u00e0 errori di lettura)\",\"next\":\"floppyRead\"},{\"label\":\"Parte, ma poi si blocca o va in Guru\",\"next\":\"guru\"}]},\"floppyDead\":{\"question\":null,\"diagnosis\":\"Il drive non risponde\",\"checks\":[\"Controlla il cavo piatto e l'alimentazione del drive (su A500 e A1200 passano dallo stesso connettore o da cavi separati)\",\"Prova con un altro drive o con un Gotek: se funziona, il guasto \u00e8 nel drive\",\"Selezione, motore e passo della testina li comanda la CIA-B: se nessun drive risponde \u00e8 tra i sospettati\",\"Il sensore di dischetto inserito e quello della traccia 0 arrivano alla CIA-A\",\"Sull'A500 un selettore DF0 o un drive esterno installato male pu\u00f2 confondere la selezione\"],\"solutions\":[\"Sostituisci il drive o monta un Gotek per escludere la meccanica\",\"Prova Amiga Test Kit (si avvia anche da Gotek): il test del floppy controlla motore, passo e lettura\",\"Se il drive \u00e8 buono, prova la CIA-B\"],\"severity\":\"media\"},\"floppyRead\":{\"question\":null,\"diagnosis\":\"Il drive gira ma non legge\",\"checks\":[\"Prova pi\u00f9 dischetti: quelli vecchi perdono i dati o hanno la superficie rovinata\",\"Pulisci le testine con alcool isopropilico e un cotton fioc, senza premere\",\"Guarda se la testina si muove liscia: il grasso delle guide secco la blocca o la fa saltare\",\"Controlla il sensore della traccia 0 e la cinghia o gli ingranaggi dell'espulsione\",\"I dati letti arrivano a Paula: se due drive buoni non leggono, Paula o il suo collegamento sono sospetti\"],\"solutions\":[\"Pulisci e rilubrifica le guide della testina con grasso adatto\",\"Usa Amiga Test Kit per vedere se legge le tracce e con quanti errori\",\"Monta un Gotek se la meccanica non si recupera\"],\"severity\":\"bassa\"},\"guru\":{\"question\":\"Quando compare il problema?\",\"options\":[{\"label\":\"Sempre all'avvio, anche senza dischetto\",\"next\":\"guruHw\"},{\"label\":\"Solo con alcuni giochi o programmi\",\"next\":\"guruSw\"},{\"label\":\"Dopo un po' che \u00e8 acceso, a caldo\",\"next\":\"heat\"}]},\"guruHw\":{\"question\":null,\"diagnosis\":\"Guru Meditation sempre all'avvio\",\"checks\":[\"Annota il codice del Guru: i numeri che cambiano a ogni avvio fanno pensare alla memoria, quelli sempre uguali a un'espansione o alla ROM\",\"Togli tutte le espansioni di memoria e gli acceleratori\",\"Controlla l'alimentazione sotto carico: un +5 V basso d\u00e0 errori casuali\",\"Sospetti: chip RAM o fast RAM, CPU, ROM, contatti negli zoccoli\"],\"solutions\":[\"Prova la memoria con DiagROM o con Amiga Test Kit\",\"Sostituisci la memoria indicata, pulisci gli zoccoli\"],\"severity\":\"media\"},\"guruSw\":{\"question\":null,\"diagnosis\":\"Guru solo con alcuni programmi\",\"checks\":[\"Molti giochi per Kickstart 1.3 non funzionano con il 2.0 o il 3.x (e viceversa)\",\"Sull'A1200 le cache del 68EC020 e la memoria in pi\u00f9 possono bloccare i giochi vecchi\",\"Con Kickstart 2.0 e successivi, tenendo premuti i due tasti del mouse all'accensione compare il menu di avvio: si possono disattivare espansioni e cache e scegliere il chipset\"],\"solutions\":[\"Usa il menu di avvio o un programma per tornare al comportamento dell'1.3\",\"Per i giochi da hard disk usa le versioni WHDLoad\",\"Se si blocca con tutti i programmi, torna alla diagnosi per l'avvio\"],\"severity\":\"bassa\"},\"heat\":{\"question\":null,\"diagnosis\":\"Si blocca o si riavvia a caldo\",\"checks\":[\"Misura il +5 V dopo mezz'ora: se cala o oscilla, l'alimentatore \u00e8 stanco\",\"Raffredda un chip alla volta con lo spray: quando torna a funzionare hai trovato il colpevole\",\"Cerca saldature fredde e piste corrose (su A600 e A1200 vicino ai condensatori)\",\"Un chip che scalda molto pi\u00f9 degli altri \u00e8 sospetto\"],\"solutions\":[\"Ricondensa l'alimentatore o sostituiscilo\",\"Risalda i punti dubbi e sostituisci il chip che cede con il calore\"],\"severity\":\"media\"},\"video\":{\"question\":\"Che problema vedi?\",\"options\":[{\"label\":\"Colori sbagliati o mancanti\",\"next\":\"badColors\"},{\"label\":\"Righe, sfarfallio o disturbi\",\"next\":\"noisy\"},{\"label\":\"Immagine solo in bianco e nero\",\"next\":\"mono\"}]},\"badColors\":{\"question\":null,\"diagnosis\":\"Colori sbagliati o mancanti\",\"checks\":[\"Prova un altro cavo e un altro monitor: un filo del rosso, del verde o del blu interrotto toglie un colore\",\"Se manca sempre lo stesso colore: Denise (Lisa sull'A1200) o i transistor e i buffer dell'uscita RGB\",\"Se i colori sono strani solo in composito: l'encoder video (CXA1145 o CX2075M) o i suoi condensatori\",\"Su A600 e A1200 i condensatori che perdono corrodono le piste del video\"],\"solutions\":[\"Ripara il cavo o usa un cavo SCART RGB buono\",\"Ricondensa e ripara le piste vicino all'uscita video\",\"Sostituisci Denise o Lisa se il difetto si vede su tutte le uscite\"],\"severity\":\"media\"},\"noisy\":{\"question\":null,\"diagnosis\":\"Righe, sfarfallio o disturbi\",\"checks\":[\"Righe verticali fisse (jail bars) sono comuni sull'A1200 e peggiorano con un alimentatore rumoroso\",\"Controlla l'alimentatore e i condensatori di filtro sulla scheda\",\"Un cavo SCART senza schermatura o con la massa scollegata d\u00e0 disturbi\",\"Sfarfallio di tutta l'immagine: sincronismo, cavo o monitor\"],\"solutions\":[\"Ricondensa l'alimentatore e la scheda\",\"Usa un cavo schermato con il sincronismo giusto\",\"Sull'A1200 esistono piccole modifiche e filtri per ridurre le jail bars\"],\"severity\":\"bassa\"},\"mono\":{\"question\":null,\"diagnosis\":\"Immagine solo in bianco e nero\",\"checks\":[\"Sull'A500 e sull'A2000 l'uscita composita \u00e8 in bianco e nero per progetto: per i colori serve l'RGB o il modulatore A520\",\"Su A600 e A1200 il composito \u00e8 a colori: se esce in bianco e nero controlla PAL\/NTSC del TV e l'encoder video\",\"Con un adattatore SCART collegato al composito il TV mostra spesso il bianco e nero se lo standard non coincide\"],\"solutions\":[\"Usa l'uscita RGB con un cavo SCART o un monitor 1084\",\"Su A600 e A1200 controlla l'encoder video e il quarzo del colore\"],\"severity\":\"bassa\"},\"audio\":{\"question\":\"Com'\u00e8 l'audio?\",\"options\":[{\"label\":\"Nessun suono su tutti e due i canali\",\"next\":\"audioNone\"},{\"label\":\"Manca un canale (destro o sinistro)\",\"next\":\"audioOne\"},{\"label\":\"Debole, ovattato o con fruscio\",\"next\":\"audioWeak\"}]},\"audioNone\":{\"question\":null,\"diagnosis\":\"Nessun suono\",\"checks\":[\"Prova con le prese RCA dell'Amiga collegate a un amplificatore: l'audio non passa dall'uscita RGB\",\"L'audio esce da Paula e passa per il filtro e gli amplificatori operazionali prima delle prese\",\"Su A600 e A1200 il guasto pi\u00f9 comune sono i condensatori che hanno perso vicino alla sezione audio\",\"Controlla l'alimentazione degli operazionali (+12 V e -12 V o +5 V a seconda del modello)\"],\"solutions\":[\"Ricondensa e ripara le piste della sezione audio\",\"Sostituisci gli operazionali del filtro\",\"Se fino all'uscita di Paula non c'\u00e8 segnale, il sospettato \u00e8 Paula\"],\"severity\":\"media\"},\"audioOne\":{\"question\":null,\"diagnosis\":\"Manca un canale\",\"checks\":[\"Controlla la presa RCA e le sue saldature, spesso rotte dalle tirate dei cavi\",\"Segui il canale mancante con l'oscilloscopio da Paula alla presa\",\"Sull'A600 e A1200 guarda i condensatori e le piste di quel canale\"],\"solutions\":[\"Risalda o sostituisci la presa RCA\",\"Sostituisci l'operazionale o il condensatore del canale guasto\"],\"severity\":\"bassa\"},\"audioWeak\":{\"question\":null,\"diagnosis\":\"Audio debole o ovattato\",\"checks\":[\"Il suono ovattato pu\u00f2 essere il filtro audio acceso: si comanda con il programma, e sull'A500 il LED di accensione si abbassa quando il filtro \u00e8 spento\",\"Fruscio e ronzio: alimentazione, massa del cavo, condensatori\",\"Su A600 e A1200 i condensatori elettrolitici SMD che perdono abbassano o distorcono l'audio\"],\"solutions\":[\"Ricondensa la scheda (e l'alimentatore)\",\"Usa cavi schermati e prova un altro amplificatore\"],\"severity\":\"bassa\"},\"keyboard\":{\"question\":\"All'accensione il LED del Caps Lock lampeggia da solo?\",\"options\":[{\"label\":\"S\u00ec, lampeggia\",\"next\":\"kbBlink\"},{\"label\":\"No, ma alcuni tasti non funzionano\",\"next\":\"kbKeys\"},{\"label\":\"Nessun tasto risponde\",\"next\":\"kbDead\"}]},\"kbBlink\":{\"question\":null,\"diagnosis\":\"Il Caps Lock lampeggia: errore della tastiera\",\"checks\":[\"Il controller della tastiera segnala i propri errori con i lampeggi del Caps Lock\",\"1 lampeggio: errore della ROM del controller; 2: errore della sua RAM; 3: errore del watchdog; 4: corto tra due linee della matrice (spesso un tasto bloccato)\",\"Sull'A500 e sull'A2000 il controller \u00e8 sulla tastiera; su A600 e A1200 \u00e8 sulla scheda madre e la tastiera \u00e8 solo una matrice\"],\"solutions\":[\"Con 4 lampeggi cerca il tasto premuto o il corto sulla membrana\",\"Con 1, 2 o 3 lampeggi il controller \u00e8 guasto: sostituiscilo o usa un controller moderno\"],\"severity\":\"media\"},\"kbKeys\":{\"question\":null,\"diagnosis\":\"Alcuni tasti non funzionano\",\"checks\":[\"Le tastiere Amiga hanno una membrana: le piste si interrompono o si ossidano\",\"Se non funziona un gruppo di tasti sulla stessa riga o colonna, la pista interrotta \u00e8 in comune\",\"Su A600 e A1200 controlla anche il connettore del cavo piatto della membrana\"],\"solutions\":[\"Pulisci i contatti e ripara le piste con vernice conduttiva\",\"Prova i tasti con Amiga Test Kit o DiagROM\"],\"severity\":\"bassa\"},\"kbDead\":{\"question\":null,\"diagnosis\":\"Nessun tasto risponde\",\"checks\":[\"Controlla il cavo e il connettore della tastiera\",\"Sull'A500 la tastiera dialoga con la CIA-A attraverso due linee (clock e dati): un guasto della CIA-A o delle sue piste blocca tutta la tastiera\",\"Su A600 e A1200 controlla il controller della tastiera sulla scheda madre\"],\"solutions\":[\"Prova una tastiera funzionante\",\"Prova la CIA-A con una di ricambio\"],\"severity\":\"media\"},\"ports\":{\"question\":\"Cosa non funziona?\",\"options\":[{\"label\":\"Il puntatore non si muove o va in una sola direzione\",\"next\":\"mouseMove\"},{\"label\":\"Il tasto destro (o il centrale) non funziona\",\"next\":\"rightBtn\"},{\"label\":\"Joystick, tasto sinistro o fuoco\",\"next\":\"fireBtn\"}]},\"mouseMove\":{\"question\":null,\"diagnosis\":\"Il puntatore non si muove bene\",\"checks\":[\"Prova un altro mouse e l'altra porta\",\"Il movimento passa dalle porte a Denise (Lisa sull'A1200), con resistenze e filtri lungo la strada\",\"Collegare e scollegare a computer acceso pu\u00f2 bruciare filtri e resistenze delle porte\"],\"solutions\":[\"Controlla e sostituisci i filtri e le resistenze della porta\",\"Prova le porte con Amiga Test Kit o DiagROM\"],\"severity\":\"bassa\"},\"rightBtn\":{\"question\":null,\"diagnosis\":\"Il tasto destro non funziona\",\"checks\":[\"Il tasto destro e quello centrale passano dalle linee POT, lette da Paula\",\"Prova con un altro mouse: i microinterruttori si consumano\",\"Controlla le resistenze e i condensatori della porta su quelle linee\"],\"solutions\":[\"Sostituisci il microinterruttore del mouse\",\"Se il problema \u00e8 in tutte e due le porte, Paula o la sua alimentazione sono sospetti\"],\"severity\":\"bassa\"},\"fireBtn\":{\"question\":null,\"diagnosis\":\"Joystick o tasto sinistro\",\"checks\":[\"Il fuoco e il tasto sinistro arrivano alla CIA-A; le direzioni del joystick passano da Denise (Lisa)\",\"Prova un joystick sicuramente buono e l'altra porta\",\"Controlla le resistenze e i filtri della porta\"],\"solutions\":[\"Sostituisci i filtri guasti\",\"Se il fuoco non va in nessuna porta, prova la CIA-A\"],\"severity\":\"bassa\"},\"memory\":{\"question\":null,\"diagnosis\":\"Vede meno memoria del previsto\",\"checks\":[\"Controlla quanta ne vede: con Workbench (Avail nella Shell, o la barra del titolo) o con Amiga Test Kit\",\"A500 rev 6A con espansione nella botola: 512 KB di chip pi\u00f9 512 KB di slow RAM, oppure 1 MB di chip se il ponticello JP2 \u00e8 spostato e Agnus \u00e8 da 1 MB\",\"L'espansione A501 ha una batteria per l'orologio che spesso ha perso: controlla piste e connettore\",\"Sull'A1200 una scheda di fast RAM nella porta trapdoor pu\u00f2 entrare in conflitto con le schede PCMCIA\"],\"solutions\":[\"Pulisci il connettore della botola e controlla la memoria dell'espansione\",\"Prova la memoria con DiagROM o Amiga Test Kit\",\"Togli la batteria dell'espansione se c'\u00e8 ancora\"],\"severity\":\"bassa\"},\"battery\":{\"question\":null,\"diagnosis\":\"Batteria che ha perso acido\",\"checks\":[\"Le batterie al nichel (Varta) dell'orologio perdono un liquido che corrode rame e stagno: sono sull'A500 Plus, sull'A2000, sull'A3000 e sulle espansioni A501\",\"La corrosione si allarga sotto i chip e negli zoccoli vicini, e mangia le piste e i fori passanti\",\"Sull'A500 Plus colpisce spesso la zona delle CIA e dei chip logici vicini alla batteria\"],\"solutions\":[\"Togli subito la batteria\",\"Neutralizza con aceto o acido citrico diluito, poi lava con acqua distillata e alcool isopropilico\",\"Controlla ogni pista con il multimetro e sostituisci gli zoccoli corrosi\",\"Se l'orologio ti serve, monta un portabatterie per una pila a bottone (con il diodo di protezione) lontano dalla scheda\"],\"severity\":\"alta\"},\"caps\":{\"question\":null,\"diagnosis\":\"Condensatori SMD da sostituire (A600, A1200, CD32)\",\"checks\":[\"A600, A1200 e CD32 (come A3000 e A4000) usano condensatori elettrolitici SMD che col tempo perdono elettrolita\",\"Sintomi: audio debole o assente, colori strani, drive che non legge, blocchi casuali, a volte niente avvio\",\"L'elettrolita corrode le piste e i fori sotto e attorno ai condensatori: va pulito anche dove non si vede\"],\"solutions\":[\"Sostituisci tutti gli elettrolitici seguendo la lista della tua revisione di scheda\",\"Pulisci la scheda con alcool isopropilico e controlla le piste vicine\",\"Usa condensatori al tantalio o elettrolitici di buona qualit\u00e0 con lo stesso valore e la stessa tensione\"],\"severity\":\"media\"},\"finalTest\":{\"question\":null,\"diagnosis\":\"Collaudo finale completo\",\"checks\":[\"Lascia girare DiagROM o Amiga Test Kit: memoria, CIA, tastiera, porte, audio e drive\",\"Fai partire il Workbench e alcuni giochi da dischetto\",\"Prova tutti i tasti, tutti e due i canali audio, mouse e joystick in entrambe le porte\",\"Scrivi e rileggi un dischetto\",\"Lascia l'Amiga acceso almeno un'ora: molti guasti compaiono solo a caldo\"],\"solutions\":[\"Se tutto passa, richiudi e annota cosa hai sostituito\",\"Togli la batteria Varta se c'\u00e8 ancora e usa un alimentatore in buono stato\"],\"severity\":\"bassa\"}}<\/script>\r\n<script type=\"application\/json\" id=\"rfdCfg\">{\"chipNote\":\"\",\"boards\":[{\"id\":\"a500\",\"label\":\"A500 \/ A500 Plus\",\"groups\":[[\"Cuore del sistema\",[[\"68000\",\"MC68000\",\"CPU\",\"Il processore a 7 MHz. Nello zoccolo: si toglie e si prova facilmente.\",\"68000|\\\\bCPU\\\\b|processore\"],[\"Agnus\",\"8370\/8371 \u00b7 8372A\",\"DMA e chip RAM\",\"Genera gli indirizzi della chip RAM e i clock. Sta in uno zoccolo PLCC: un contatto sporco \u00e8 la causa di molti schermi grigi o verdi.\",\"Agnus|PLCC\"],[\"Gary\",\"5719\",\"Logica di sistema\",\"Decodifica gli indirizzi e collega CPU, ROM e periferiche.\",\"Gary\"],[\"Kickstart\",\"ROM 40 pin\",\"Sistema operativo\",\"Una sola ROM a 16 bit. Si sostituisce con una EPROM 27C400 (anche con DiagROM).\",\"Kickstart|\\\\bROM\\\\b|EPROM\"]]],[\"Video e audio\",[[\"Denise\",\"8362 \u00b7 8373\",\"Video\",\"Genera l'immagine e legge il movimento del mouse. Super Denise 8373 sui modelli ECS.\",\"Denise\"],[\"Paula\",\"8364\",\"Audio, floppy, seriale\",\"Suono, lettura dei dati del floppy, porta seriale e linee POT (tasto destro).\",\"Paula\"],[\"Ibrido\",\"Modulo video\",\"Composito B\/N\",\"Il modulo che produce l'uscita composita in bianco e nero dell'A500.\",\"ibrido|composita\"]]],[\"Memoria e I\/O\",[[\"Chip RAM\",\"41256 \u00d716 \u00b7 44256 \u00d78\",\"512 KB \u00b7 1 MB\",\"16 chip da 256 Kbit sull'A500 rev 6A, 8 chip 44256 sull'A500 Plus.\",\"chip RAM|DRAM|41256|44256\"],[\"CIA-A\",\"8520\",\"Tastiera, porte, floppy\",\"Tastiera, fuoco del joystick, sensori del floppy, LED e mappatura della ROM all'avvio (\/OVL).\",\"CIA-A|\\\\bCIA\\\\b|8520\"],[\"CIA-B\",\"8520\",\"Floppy e seriale\",\"Motore, selezione e passo dei drive, linee di controllo di seriale e parallela.\",\"CIA-B|\\\\bCIA\\\\b|8520\"],[\"1488\/1489\",\"Driver RS-232\",\"Porta seriale\",\"Portano i segnali della seriale a \u00b112 V.\",\"1488|1489|seriale\"]]],[\"Clock e alimentazione\",[[\"Quarzo\",\"28,37516 MHz\",\"Clock PAL\",\"Agnus lo divide per dare i 7 MHz della CPU.\",\"quarzo|clock\"],[\"Batteria\",\"Varta (A500 Plus)\",\"Orologio\",\"Da togliere subito: l'acido corrode la scheda.\",\"batteria|Varta\"]]]]},{\"id\":\"a600\",\"label\":\"A600\",\"groups\":[[\"Cuore del sistema\",[[\"68000\",\"MC68000 (PLCC)\",\"CPU\",\"Il processore a 7 MHz, saldato in superficie.\",\"68000|\\\\bCPU\\\\b|processore\"],[\"Agnus\",\"8375\",\"DMA e chip RAM\",\"Fat Agnus ECS, gestisce 1 MB di chip RAM.\",\"Agnus\"],[\"Gayle\",\"Gayle\",\"Logica, IDE, PCMCIA\",\"Sostituisce Gary e gestisce l'hard disk IDE e la porta PCMCIA.\",\"Gayle|IDE|PCMCIA\"],[\"Kickstart\",\"2.05 \u00b7 ROM 40 pin\",\"Sistema operativo\",\"Una sola ROM a 16 bit, come sull'A500.\",\"Kickstart|\\\\bROM\\\\b|EPROM\"]]],[\"Video e audio\",[[\"Denise\",\"8373\",\"Video\",\"Super Denise ECS.\",\"Denise\"],[\"Paula\",\"8364\",\"Audio, floppy, seriale\",\"Come sull'A500.\",\"Paula\"],[\"Encoder\",\"CXA1145 \/ CX2075M\",\"Composito a colori\",\"Trasforma l'RGB in composito e RF. Spesso danneggiato dalla corrosione dei condensatori.\",\"encoder|CXA1145|CX2075M|composito\"]]],[\"Memoria e I\/O\",[[\"Chip RAM\",\"1 MB SMD\",\"Memoria\",\"Chip saldati in superficie.\",\"chip RAM|DRAM\"],[\"CIA\",\"8520 \u00d72\",\"Tastiera, porte, floppy\",\"Le due CIA, in versione PLCC.\",\"\\\\bCIA\\\\b|8520|CIA-A|CIA-B\"],[\"Tastiera\",\"Controller\",\"Sulla scheda madre\",\"Il controller \u00e8 sulla scheda; la tastiera \u00e8 solo una matrice con cavo piatto.\",\"controller della tastiera|matrice\"]]],[\"Da controllare sempre\",[[\"Condensatori\",\"Elettrolitici SMD\",\"Perdono elettrolita\",\"La causa principale dei guasti dell'A600: audio, video, floppy.\",\"condensatori|elettrolit\"]]]]},{\"id\":\"a1200\",\"label\":\"A1200\",\"groups\":[[\"Cuore del sistema\",[[\"68EC020\",\"MC68EC020\",\"CPU\",\"Il processore a 14 MHz, saldato in superficie.\",\"68EC020|68020|\\\\bCPU\\\\b|processore\"],[\"Alice\",\"8374\",\"DMA e chip RAM\",\"L'Agnus del chipset AGA: gestisce 2 MB di chip RAM.\",\"Alice\"],[\"Gayle\",\"Gayle\",\"Logica, IDE, PCMCIA\",\"Decodifica, hard disk IDE e porta PCMCIA.\",\"Gayle|IDE|PCMCIA\"],[\"Budgie\",\"Budgie\",\"Bus\",\"Collega il bus a 32 bit della CPU con quello dei chip custom.\",\"Budgie\"],[\"Kickstart\",\"3.0 \/ 3.1 \u00b7 2 ROM\",\"Sistema operativo\",\"Due ROM a 16 bit (alta e bassa) che insieme fanno 32 bit: non vanno scambiate.\",\"Kickstart|\\\\bROM\\\\b|EPROM\"]]],[\"Video e audio\",[[\"Lisa\",\"4203\",\"Video AGA\",\"Genera l'immagine (256 colori) e legge il mouse.\",\"Lisa\"],[\"Paula\",\"8364\",\"Audio, floppy, seriale\",\"Come sugli altri Amiga.\",\"Paula\"],[\"Encoder\",\"CXA1145 \/ CX2075M\",\"Composito a colori\",\"RGB verso composito e RF.\",\"encoder|CXA1145|CX2075M|composito\"]]],[\"Memoria e I\/O\",[[\"Chip RAM\",\"2 MB SMD\",\"Memoria\",\"Chip saldati in superficie.\",\"chip RAM|DRAM\"],[\"CIA\",\"8520 \u00d72\",\"Tastiera, porte, floppy\",\"Le due CIA.\",\"\\\\bCIA\\\\b|8520|CIA-A|CIA-B\"],[\"Tastiera\",\"Controller\",\"Sulla scheda madre\",\"La tastiera \u00e8 una membrana collegata con un cavo piatto.\",\"controller della tastiera|membrana\"]]],[\"Da controllare sempre\",[[\"Condensatori\",\"Elettrolitici SMD\",\"Perdono elettrolita\",\"Audio, video, floppy e avvio: la prima cosa da sistemare su un A1200.\",\"condensatori|elettrolit\"]]]]}],\"screen\":{\"cols\":40,\"border\":\"#0055aa\",\"bg\":\"#0055aa\",\"ink\":\"#ffffff\",\"boot\":[\"New Shell process 1\",\"1.SYS:> avail\",\"Type  Available    In-Use   Maximum\",\"chip     410224     114064    524288\",\"1.SYS:>\"]},\"screens\":[{\"t\":\"Schermo nero\",\"d\":\"Nessuna immagine, il LED di accensione pu\u00f2 essere acceso o spento.\",\"go\":\"black\",\"kind\":\"black\"},{\"t\":\"Grigio scuro\",\"d\":\"Si accende e resta grigio scuro.\",\"go\":\"darkGrey\",\"kind\":\"blank\",\"border\":\"#444444\",\"bg\":\"#444444\"},{\"t\":\"Grigio chiaro\",\"d\":\"Passa dal grigio scuro al grigio chiaro e si ferma.\",\"go\":\"lightGrey\",\"kind\":\"blank\",\"border\":\"#aaaaaa\",\"bg\":\"#aaaaaa\"},{\"t\":\"Rosso\",\"d\":\"Tutto lo schermo rosso.\",\"go\":\"red\",\"kind\":\"blank\",\"border\":\"#ff0000\",\"bg\":\"#ff0000\"},{\"t\":\"Verde\",\"d\":\"Tutto lo schermo verde.\",\"go\":\"green\",\"kind\":\"blank\",\"border\":\"#00ee00\",\"bg\":\"#00ee00\"},{\"t\":\"Blu\",\"d\":\"Tutto lo schermo blu.\",\"go\":\"blue\",\"kind\":\"blank\",\"border\":\"#0000ff\",\"bg\":\"#0000ff\"},{\"t\":\"Giallo\",\"d\":\"Tutto lo schermo giallo.\",\"go\":\"yellow\",\"kind\":\"blank\",\"border\":\"#ffee00\",\"bg\":\"#ffee00\"},{\"t\":\"Chiede il dischetto\",\"d\":\"Il Kickstart aspetta il disco, ma non parte niente.\",\"go\":\"floppyBoot\",\"kind\":\"text\",\"border\":\"#ffffff\",\"bg\":\"#ffffff\",\"ink\":\"#222222\",\"cursor\":false,\"lines\":[\"\",\"\",\"\",\"        KICKSTART 1.3\",\"\",\"  INSERISCI IL DISCO DEL WORKBENCH\",\"\",\"\"]},{\"t\":\"Guru Meditation\",\"d\":\"Riquadro rosso lampeggiante con un codice.\",\"go\":\"guru\",\"kind\":\"text\",\"border\":\"#000000\",\"bg\":\"#000000\",\"ink\":\"#ff3030\",\"cursor\":false,\"cols\":46,\"lines\":[\"\",\" Software Failure.  Press left mouse button\",\"            to continue.\",\"\",\"   Guru Meditation #00000004.00C0FF00\",\"\"]},{\"t\":\"Colori sbagliati\",\"d\":\"L'immagine c'\u00e8 ma i colori sono strani o mancano.\",\"go\":\"badColors\",\"kind\":\"colorize\",\"seed\":5},{\"t\":\"Righe verticali\",\"d\":\"Barre o disturbi sull'immagine.\",\"go\":\"noisy\",\"kind\":\"jail\"},{\"t\":\"Funziona, voglio collaudarlo\",\"d\":\"Dopo una riparazione: prova completa.\",\"go\":\"finalTest\",\"kind\":\"text\"}],\"tools\":{\"meter\":[\"Multimetro\",\"meter\",\"#3fd8ff\",\"Per misurare +5 V, +12 V e -12 V dell'alimentatore, fusibili e continuit\u00e0 delle piste.\"],\"probe\":[\"Sonda logica\",\"probe\",\"#ffd23f\",\"Economica e veloce: dice se un pin \u00e8 alto, basso o \\\"si muove\\\". Utile su CPU, ROM, Gary e CIA.\"],\"eprom\":[\"Programmatore EPROM\",\"eprom\",\"#5ad15f\",\"Per masterizzare DiagROM o un Kickstart nuovo su 27C400 (o 27C800\/27C160 con adattatore).\"],\"diagrom\":[\"DiagROM\",\"eprom\",\"#e0398a\",\"La ROM di diagnostica che si monta al posto del Kickstart: prova memoria, CIA, porte, audio e drive e scrive i risultati anche sulla seriale.\"],\"testkit\":[\"Amiga Test Kit\",\"cart\",\"#f8961e\",\"Il dischetto di collaudo gratuito: memoria, drive, tastiera, mouse e joystick, audio e video.\"],\"serial\":[\"Cavo seriale e adattatore USB\",\"harness\",\"#3fd8ff\",\"Per leggere sul PC i messaggi di DiagROM anche con lo schermo nero.\"],\"plcc\":[\"Estrattore PLCC\",\"chip\",\"#ffd23f\",\"Per togliere e rimettere Agnus dal suo zoccolo sull'A500 senza rompere i contatti.\"],\"gotek\":[\"Gotek\",\"socket\",\"#5ad15f\",\"Emulatore di floppy con chiavetta USB: esclude il drive e fa partire i dischetti di prova.\"]},\"equip\":[[\"psu|heat\",[\"meter\",\"psu\",\"therm\",\"spray\"]],[\"videoOut|badColors|noisy|mono\",[\"meter\",\"scope\",\"lens\",\"iron\"]],[\"diagrom|diagromOk|diagromDead|noStart|darkGrey|lightGrey|red|green|blue|yellow|guruHw|memory\",[\"diagrom\",\"serial\",\"eprom\",\"scope\",\"probe\",\"plcc\",\"socket\"]],[\"guruSw\",[\"testkit\"]],[\"floppy\",[\"gotek\",\"testkit\",\"alcohol\",\"meter\"]],[\"audio\",[\"scope\",\"meter\",\"iron\",\"lens\"]],[\"kb\",[\"testkit\",\"meter\",\"alcohol\",\"iron\"]],[\"mouseMove|rightBtn|fireBtn\",[\"testkit\",\"meter\",\"iron\"]],[\"battery|caps\",[\"alcohol\",\"iron\",\"lens\",\"meter\",\"socket\"]],[\"finalTest\",[\"diagrom\",\"testkit\",\"gotek\",\"psu\"]]],\"links\":[[\"psu|heat\",[[\"\ud83d\udd0c Alimentazioni\",\"\/alimentazioni-console-e-computer\/\"],[\"\ud83d\udd27 Alimentatore A500\",\"\/riparazione-alimentatore-a500\/\"]]],[\"caps|audio|badColors|noisy\",[[\"\ud83e\uddf0 Ricondensare: Recaping helper\",\"\/recaping-helper\/\"],[\"\ud83d\udd27 Recap A1200\",\"\/amiga1200-recap\/\"],[\"\ud83d\udd27 Recap A600\",\"\/amiga-600-recap\/\"]]],[\"red|diagrom|diagromDead|noStart\",[[\"\ud83d\udcbe ROM e adattatori\",\"\/rom-e-adattatori\/\"]]],[\"memory\",[[\"\ud83e\udde9 Espansione A500\",\"\/espansione-amiga-500\/\"]]],[\"floppy\",[[\"\ud83d\udcbd Selettore DF0 A500\",\"\/selettore-df0-amiga-500\/\"]]]],\"videos\":[[\"battery\",\"?guasto=Batteria\"],[\"caps|audio\",\"?guasto=Condensatori\"],[\"mouseMove|rightBtn|fireBtn\",\"?guasto=Mouse\"],[\".\",\"?q=Amiga\"]],\"videoLabels\":{\"?guasto=Batteria\":\"batterie che perdono\",\"?guasto=Condensatori\":\"condensatori\",\"?guasto=Mouse\":\"mouse\",\"?q=Amiga\":\"Amiga\"},\"periph\":[[\"eprom\",\"#e0398a\",\"DiagROM\",\"ROM DI DIAGNOSTICA\",\"Si monta al posto del Kickstart e prova memoria, CIA, porte, audio e drive. Funziona anche con lo schermo nero, perch\u00e9 scrive tutto sulla porta seriale.\",\"https:\/\/www.diagrom.com\/index.php\/download\/\",\"Scarica DiagROM\"],[\"cart\",\"#f8961e\",\"Amiga Test Kit\",\"DISCHETTO DI COLLAUDO\",\"Gratuito, si avvia da dischetto o da Gotek: memoria, drive, tastiera, mouse e joystick, audio e video. Ideale per il collaudo finale.\",\"https:\/\/github.com\/keirf\/amiga-stuff\/releases\",\"Scarica Amiga Test Kit\"],[\"harness\",\"#3fd8ff\",\"Cavo seriale\",\"DA COSTRUIRE\",\"Tre fili tra la porta seriale dell'Amiga e un adattatore USB-RS232: lo schema \u00e8 nella sezione DiagROM qui sotto.\",\"#rfd-diagrom\",\"Vedi lo schema del cavo\"],[\"socket\",\"#5ad15f\",\"Gotek\",\"FLOPPY DI PROVA\",\"Emulatore di floppy con chiavetta USB: esclude il drive e fa partire i dischetti di prova senza cercarli.\",null,\"\"],[\"scope\",\"#ffd23f\",\"Monitor 1084 o cavo SCART RGB\",\"VIDEO\",\"Per vedere l'immagine migliore dell'Amiga e capire se il problema \u00e8 il computer o il TV.\",null,\"\"],[\"psu\",\"#e0398a\",\"Alimentatore in buono stato\",\"PREVENZIONE\",\"Un alimentatore originale ricondensato o uno moderno con protezione da sovratensione.\",\"\/alimentazioni-console-e-computer\/\",\"Vedi Alimentazioni\"]],\"docs\":[[\"book\",\"#ffd23f\",\"Big Book of Amiga Hardware\",\"Schede, revisioni, chip e schemi di tutti gli Amiga.\",\"https:\/\/bigbookofamigahardware.com\/\"],[\"book\",\"#3fd8ff\",\"Amiga Hardware Database\",\"Modelli, espansioni e documentazione.\",\"https:\/\/amiga.resource.cx\/\"],[\"eprom\",\"#e0398a\",\"DiagROM\",\"Download e novit\u00e0 della ROM di diagnostica.\",\"https:\/\/www.diagrom.com\/\"],[\"cart\",\"#f8961e\",\"Amiga Test Kit e kickconv\",\"Il dischetto di collaudo e lo strumento per preparare le immagini delle ROM.\",\"https:\/\/github.com\/keirf\/amiga-stuff\"],[\"people\",\"#e0398a\",\"English Amiga Board\",\"Il forum di riferimento per riparazioni e hardware Amiga.\",\"https:\/\/eab.abime.net\/\"],[\"play\",\"#f94144\",\"Videoteca RetroFixer\",\"I nostri video di riparazione Amiga.\",\"\/videoteca\/?q=Amiga\"],[\"chip\",\"#7c70da\",\"Recap A1200\",\"Come abbiamo ricondensato un A1200.\",\"\/amiga1200-recap\/\"],[\"chip\",\"#7c70da\",\"Recap A600\",\"Ricondensare un A600 e ripararne le piste.\",\"\/amiga-600-recap\/\"]]}<\/script>\r\n<script>if(!window.RF_EN){\r\n(function () {\r\n  var root = document.getElementById('rfd');\r\n  [].forEach.call(root.querySelectorAll('.mach a'), function (a) {\r\n    if (location.pathname.indexOf(a.getAttribute('href')) === 0) { a.classList.add('on'); a.setAttribute('aria-current', 'page'); }\r\n  });\r\n  if (!root || root.dataset.ready) return;\r\n  root.dataset.ready = '1';\r\n  var $ = function (id) { return document.getElementById(id); };\r\n  function esc(s) { return String(s == null ? '' : s).replace(\/[&<>\"']\/g, function (c) { return { '&': '&amp;', '<': '&lt;', '>': '&gt;', '\"': '&quot;', \"'\": '&#39;' }[c]; }); }\r\n  function norm(s) { return String(s || '').toLowerCase().normalize('NFD').replace(\/[\u0300-\u036f]\/g, ''); }\r\n  var TREE = JSON.parse($('rfdData').textContent);\r\n  var CFG = JSON.parse($('rfdCfg').textContent);\r\n  var SEV = { alta: ['#f94144', 'GRAVIT\u00c0 ALTA'], media: ['#ffd23f', 'GRAVIT\u00c0 MEDIA'], bassa: ['#5ad15f', 'GRAVIT\u00c0 BASSA'] };\r\n\r\n  \/* ---------- icone pixel (12x12) ---------- *\/\r\n  var PIX = {\r\n    meter: ['.aaaaaaaaaa.', '.abbbbbbbba.', '.ab.cccc.ba.', '.abbbbbbbba.', '.aaaaaaaaaa.', '.a..aaaa..a.', '.a.a....a.a.', '.a..aaaa..a.', '.aaaaaaaaaa.', '..d......e..', '..d......e..', '..d......e..'],\r\n    scope: ['aaaaaaaaaaaa', 'abbbbbbbbbba', 'ab..c...c.ba', 'ab.c.c.c.cba', 'abc...c...ba', 'abbbbbbbbbba', 'aaaaaaaaaaaa', 'a.dd.dd.dd.a', 'aaaaaaaaaaaa', '............', '............', '............'],\r\n    probe: ['.......aa...', '......abba..', '.....abba...', '....abba....', '...abba.....', '..acca......', '.acca.......', 'acca........', 'aa..........', 'd...........', 'd...........', 'd...........'],\r\n    iron:  ['..........aa', '.........aba', '........aba.', '.......aba..', '......cca...', '.....cc.....', '....cc......', '...dd.......', '..dd........', '.dd.........', 'dd..........', 'd...........'],\r\n    cart:  ['.aaaaaaaaaa.', '.abbbbbbbba.', '.abccccccba.', '.abccccccba.', '.abbbbbbbba.', '.aaaaaaaaaa.', '.aaaaaaaaaa.', '..d.d.d.d...', '..d.d.d.d...', '............', '............', '............'],\r\n    harness: ['aaa......aaa', 'aba......aba', 'aaa......aaa', '.c........c.', '.c........c.', '..cccccccc..', '............', 'aaa......aaa', 'aba......aba', 'aaa......aaa', '.d........d.', '.dddddddddd.'],\r\n    chip:  ['.d.d.d.d.d..', 'aaaaaaaaaaa.', 'abbbbbbbbbad', 'ab.......ba.', 'ab.ccccc.bad', 'ab.......ba.', 'abbbbbbbbbad', 'aaaaaaaaaaa.', '.d.d.d.d.d..', '............', '............', '............'],\r\n    eprom: ['aaaaaaaaaaaa', 'abbbbbbbbbba', 'ab.cccccc.ba', 'ab.c....c.ba', 'ab.cccccc.ba', 'abbbbbbbbbba', 'aaaaaaaaaaaa', '.d.d.d.d.d.d', '............', '............', '............', '............'],\r\n    spray: ['....aa......', '...abba..c..', '....aa..c.c.', '...aaaa...c.', '..abbbba....', '..abbbba....', '..abccba....', '..abccba....', '..abbbba....', '..abbbba....', '..aaaaaa....', '............'],\r\n    therm: ['....aaa.....', '...abbba....', '...abcba....', '...abcba....', '...abcba....', '...abcba....', '..abcccba...', '.abcccccba..', '.abcccccba..', '..abcccba...', '...aaaaa....', '............'],\r\n    psu:   ['aaaaaaaaaaaa', 'abbbbbbbbbba', 'ab.c.c.c..ba', 'abbbbbbbbbba', 'aaaaaaaaaaaa', '.....dd.....', '.....d......', '.....d......', '....ddd.....', '....d.d.....', '............', '............'],\r\n    socket:['aaaaaaaaaaaa', 'a.c.c.c.c.ca', 'a..........a', 'a.c.c.c.c.ca', 'aaaaaaaaaaaa', '.d.d.d.d.d.d', '............', '............', '............', '............', '............', '............'],\r\n    brush: ['..........aa', '.........aa.', '........aa..', '.......aa...', '......aa....', '.....bbb....', '....bbbbb...', '...ccccc....', '..ccccc.....', '.cccc.......', '............', '............'],\r\n    lens:  ['...aaaa.....', '..abbbba....', '.abccccba...', '.abccccba...', '.abccccba...', '..abbbba....', '...aaaa.d...', '........d...', '.........d..', '..........d.', '............', '............'],\r\n    book:  ['aaaaa.aaaaa.', 'abbba.abbba.', 'abbbaaabbba.', 'abbba.abbba.', 'abbba.abbba.', 'abbbaaabbba.', 'aaaaa.aaaaa.', '.....c......', '............', '............', '............', '............'],\r\n    people:['..aa....aa..', '.abba..abba.', '.abba..abba.', '..aa....aa..', '.aaaa..aaaa.', 'aaaaaaaaaaaa', 'aaaaaaaaaaaa', '............', '............', '............', '............', '............'],\r\n    play:  ['aaaaaaaaaaaa', 'a..........a', 'a..b.......a', 'a..bbb.....a', 'a..bbbbb...a', 'a..bbb.....a', 'a..b.......a', 'a..........a', 'aaaaaaaaaaaa', '............', '............', '............']\r\n  };\r\n  function pix(name, col) {\r\n    var m = PIX[name] || PIX.chip, s = '', pal = { a: col, b: '#ffffff', c: '#5ad15f', d: '#9a9a9a', e: '#f94144' };\r\n    for (var y = 0; y < m.length; y++) for (var x = 0; x < m[y].length; x++) { var ch = m[y][x]; if (ch !== '.') s += '<rect x=\"' + x + '\" y=\"' + y + '\" width=\"1.02\" height=\"1.02\" fill=\"' + pal[ch] + '\"\/>'; }\r\n    return '<svg viewBox=\"0 0 12 12\" shape-rendering=\"crispEdges\" aria-hidden=\"true\">' + s + '<\/svg>';\r\n  }\r\n\r\n  \/* ---------- attrezzatura ---------- *\/\r\n  var TOOLS = {\r\n    meter: ['Multimetro', 'meter', '#3fd8ff', 'Per misurare 5 V, 9 V AC e 12 V, verificare fusibili, cavi e continuit\u00e0 delle piste.'],\r\n    scope: ['Oscilloscopio', 'scope', '#5ad15f', 'Per vedere clock, segnali video e attivit\u00e0 sui bus: indispensabile per i guasti a schermo nero.'],\r\n    probe: ['Sonda logica', 'probe', '#ffd23f', 'Economica e veloce: dice se un pin \u00e8 alto, basso o \"si muove\". Utile su RAM, CPU e PLA.'],\r\n    deadtest: ['Cartuccia Dead Test', 'cart', '#e0398a', 'Parte anche senza KERNAL: prova RAM, ROM e Color RAM e lampeggia se lo schermo non si vede.'],\r\n    diag: ['Diagnostic 586220 + cavetti', 'harness', '#f8961e', 'Collaudo di tastiera, porte, CIA e SID con i connettori di loopback.'],\r\n    chiptester: ['Chip tester', 'chip', '#3fd8ff', 'Prova fuori dalla scheda RAM, ROM e logica 74xx, per esempio con un Retro Chip Tester.'],\r\n    eprom: ['Programmatore EPROM', 'eprom', '#5ad15f', 'Per sostituire BASIC, KERNAL e Character ROM con EPROM nuove (con adattatore).'],\r\n    iron: ['Saldatore e dissaldatore', 'iron', '#f94144', 'A temperatura controllata. Una pompetta o una stazione dissaldante salva le piste.'],\r\n    socket: ['Zoccoli torniti', 'socket', '#ffd23f', 'Da montare sui chip sostituiti: la prossima volta baster\u00e0 sfilarli.'],\r\n    alcohol: ['Alcool isopropilico e spazzolino', 'brush', '#3fd8ff', 'Per contatti ossidati di porte, connettori e tastiera.'],\r\n    spray: ['Spray congelante \/ aria calda', 'spray', '#5ad15f', 'Per i guasti che compaiono a caldo o a freddo: raffreddi un chip alla volta.'],\r\n    therm: ['Termometro IR o termocamera', 'therm', '#f8961e', 'Trova in pochi secondi il chip che scalda troppo (spesso quello in corto).'],\r\n    psu: ['Alimentatore sicuro', 'psu', '#e0398a', 'Moderno, con protezione da sovratensione: protegge il computer riparato.'],\r\n    lens: ['Lente o microscopio', 'lens', '#3fd8ff', 'Per trovare saldature fredde, piste interrotte e pin rotti.']\r\n  };\r\n  if (CFG.tools) Object.keys(CFG.tools).forEach(function (k) { TOOLS[k] = CFG.tools[k]; });\r\n  \/\/ attrezzatura, pagine collegate e video: regole dalla configurazione della macchina\r\n  function rules(list) { return (list || []).map(function (r) { return [new RegExp(r[0]), r[1]]; }); }\r\n  var EQUIP_RULES = rules(CFG.equip), LINK_RULES = rules(CFG.links), VIDEO_RULES = rules(CFG.videos);\r\n  var VIDEO_LABEL = CFG.videoLabels || {}; \/\/ etichette per i filtri del tipo \"?macchina=...\"\r\n  function equipFor(id) { for (var i = 0; i < EQUIP_RULES.length; i++) if (EQUIP_RULES[i][0].test(id)) return EQUIP_RULES[i][1]; return ['meter', 'iron']; }\r\n\r\n  \/* ---------- chip ---------- *\/\r\n  var BOARDS = CFG.boards, B0 = BOARDS[0].id, CHIPS = {};\r\n  BOARDS.forEach(function (b) { CHIPS[b.id] = b.groups.map(function (g) { return [g[0], g[1].map(function (c) { return [c[0], c[1], c[2], c[3], new RegExp(c[4])]; })]; }); });\r\n  $('rfdTabs').innerHTML = BOARDS.map(function (b, i) { return '<button type=\"button\" class=\"tab' + (i ? '' : ' on') + '\" data-b=\"' + b.id + '\">' + esc(b.label) + '<\/button>'; }).join('');\r\n  var board = B0, hotSet = [];\r\n  function renderBoard() {\r\n    $('rfdBoard').innerHTML = CHIPS[board].map(function (g, gi) {\r\n      return '<div class=\"grp\"><b>' + esc(g[0].toUpperCase()) + '<\/b><div class=\"row\">' + g[1].map(function (c, ci) {\r\n        var hot = hotSet.indexOf(gi + '-' + ci) >= 0;\r\n        return '<button type=\"button\" class=\"ic' + (hot ? ' hot' : '') + '\" data-c=\"' + gi + '-' + ci + '\"><span class=\"u\">' + esc(c[0]) + '<\/span><span class=\"p\">' + esc(c[1]) + '<\/span><span class=\"r\">' + esc(c[2]) + '<\/span><\/button>';\r\n      }).join('') + '<\/div><\/div>';\r\n    }).join('');\r\n  }\r\n  function chipInfo(key) {\r\n    var p = key.split('-'), c = CHIPS[board][+p[0]][1][+p[1]];\r\n    $('rfdIcInfo').innerHTML = '<b>' + esc(c[0]) + ' \u00b7 ' + esc(c[1]) + '<\/b> \u2014 ' + esc(c[2]) + '<br>' + esc(c[3]);\r\n  }\r\n  function chipsInText(text) {\r\n    var out = [];\r\n    CHIPS[B0].forEach(function (g, gi) { g[1].forEach(function (c, ci) { if (c[4].test(text)) out.push(gi + '-' + ci); }); });\r\n    return out;\r\n  }\r\n\r\n  \/* ---------- schermate tipiche ---------- *\/\r\n  var SCR = CFG.screen;\r\n  function seeded(n) { var s = n; return function () { s = (s * 9301 + 49297) % 233280; return s \/ 233280; }; }\r\n  var PAL = ['#000000', '#ffffff', '#883932', '#67b6bd', '#8b3f96', '#55a049', '#40318d', '#bfce72', '#8b5429', '#574200', '#b86962', '#505050', '#787878', '#94e089', '#7869c4', '#9f9f9f'];\r\n  var GLYPH = '\u2580\u2584\u2588\u258c\u2590\u2591\u2592\u2593\u25a0\u25a1\u25aa\u25c6\u25c7\u25cb\u25cf\u25d8\u25d9\u2660\u2663\u2665\u2666\u2571\u2572\u2573\u253c\u2524\u251c\u252c\u2534\u2502\u2500';\r\n  function scrGarbage(seed, cols, rows) {\r\n    var r = seeded(seed), lines = [];\r\n    for (var y = 0; y < rows; y++) { var l = ''; for (var x = 0; x < cols; x++) l += GLYPH[Math.floor(r() * GLYPH.length)]; lines.push(l); }\r\n    return lines.join('\\n');\r\n  }\r\n  function colorize(text, seed) {\r\n    var r = seeded(seed);\r\n    return text.split('').map(function (ch) { return ch === '\\n' || ch === ' ' ? ch : '<span style=\"color:' + PAL[1 + Math.floor(r() * 15)] + '\">' + esc(ch) + '<\/span>'; }).join('');\r\n  }\r\n  function charrom(text) { var map = '\u2592\u2593\u259a\u259e\u2599\u259f\u259b\u259c\u25a0\u25d8'; return esc(text).replace(\/[A-Z0-9*.()]\/g, function (c) { return map[c.charCodeAt(0) % map.length]; }); }\r\n  function screenHtml(s) {\r\n    if (s.kind === 'nosignal') return '<div class=\"scr nosig\"><b>' + esc(s.label || 'NESSUN SEGNALE') + '<\/b><\/div>';\r\n    if (s.kind === 'black') return '<div class=\"scr black\"><div class=\"in\"><\/div><\/div>';\r\n    var cols = s.cols || SCR.cols, text = (s.lines || SCR.boot).join('\\n') + (s.cursor === false ? '' : '\\n\u2588');\r\n    var fs = Math.min(8.5, 84 \/ (cols * 0.5)).toFixed(2);\r\n    var inner = s.kind === 'blank' ? '' : s.kind === 'garbage' ? scrGarbage(s.seed || 7, cols, s.rows || 12) : s.kind === 'charrom' ? charrom(text) : s.kind === 'colorize' ? colorize(text, s.seed || 3) : esc(text);\r\n    return '<div class=\"scr' + (s.kind === 'jail' ? ' jail' : '') + '\" style=\"background:' + (s.border || SCR.border) + '\"><div class=\"in\" style=\"background-color:' + (s.bg || SCR.bg) + ';color:' + (s.ink || SCR.ink) + ';font-size:' + fs + 'cqw\">' + inner + '<\/div><\/div>';\r\n  }\r\n  var SCREENS = CFG.screens.map(function (s) { return { t: s.t, d: s.d, go: s.go, html: screenHtml(s) }; });\r\n  $('rfdScreens').innerHTML = SCREENS.map(function (s, i) {\r\n    return '<button type=\"button\" class=\"scard\" data-go=\"' + s.go + '\"><div class=\"tv\">' + s.html + '<\/div><b>' + esc(s.t) + '<\/b><small>' + esc(s.d) + '<\/small><span class=\"go\">VAI ALLA DIAGNOSI \u25b6<\/span><\/button>';\r\n  }).join('');\r\n\r\n  \/* ---------- periferiche, attrezzatura, documenti ---------- *\/\r\n  var PERIPH = CFG.periph;\r\n  $('rfdPeriph').innerHTML = PERIPH.map(function (p) {\r\n    var tag = p[5] ? 'a href=\"' + p[5] + '\"' : 'div';\r\n    return '<' + tag + ' class=\"card\" style=\"--acc:' + p[1] + '\"><div class=\"ct\">' + pix(p[0], p[1]) + '<div><h4>' + esc(p[2]) + '<\/h4><span class=\"tag\">' + esc(p[3]) + '<\/span><\/div><\/div><p>' + esc(p[4]) + '<\/p>' + (p[5] ? '<span class=\"dom\">' + esc(p[6]) + ' \u2192<\/span>' : '') + '<\/' + (p[5] ? 'a' : 'div') + '>';\r\n  }).join('');\r\n  $('rfdTools').innerHTML = Object.keys(TOOLS).map(function (k) {\r\n    var t = TOOLS[k];\r\n    return '<div class=\"card\" style=\"--acc:' + t[2] + '\"><div class=\"ct\">' + pix(t[1], t[2]) + '<h4>' + esc(t[0]) + '<\/h4><\/div><p>' + esc(t[3]) + '<\/p><\/div>';\r\n  }).join('');\r\n  var DOCS = CFG.docs;\r\n  function host(u) { if (u.charAt(0) === '\/') return 'retrofixer.it'; try { return new URL(u).hostname.replace(\/^www\\.\/, ''); } catch (e) { return ''; } }\r\n  $('rfdDocs').innerHTML = DOCS.map(function (d) {\r\n    var ext = d[4].charAt(0) !== '\/';\r\n    return '<a class=\"card\" href=\"' + d[4] + '\"' + (ext ? ' target=\"_blank\" rel=\"noopener\"' : '') + ' style=\"--acc:' + d[1] + '\"><div class=\"ct\">' + pix(d[0], d[1]) + '<h4>' + esc(d[2]) + '<\/h4><\/div><p>' + esc(d[3]) + '<\/p><span class=\"dom\">' + esc(host(d[4])) + (ext ? ' \u2197' : ' \u2192') + '<\/span><\/a>';\r\n  }).join('');\r\n\r\n  \/* ---------- diagnosi guidata ---------- *\/\r\n  var path = ['start'];\r\n  var nodeCount = Object.keys(TREE).filter(function (k) { return !TREE[k].question; }).length;\r\n  $('rfdCount').innerHTML = nodeCount + ' DIAGNOSI<small>SYSTEM READY.<\/small>';\r\n  function title(id) { var n = TREE[id]; if (!n) return id; if (id === 'start') return 'Avvio'; return n.diagnosis || n.question; }\r\n  function shortT(s) { s = String(s); return s.length > 38 ? s.slice(0, 36) + '\u2026' : s; }\r\n  function li(line) {\r\n    var t = String(line);\r\n    if (!t.trim()) return '';\r\n    var m = \/^\\s*(?:\u2022|-|\u2013)\\s*(.*)$\/.exec(t);\r\n    if (\/^\\s{2,}\/.test(t) || (m && \/^\\s\/.test(t))) return '<li class=\"sub\">' + esc(m ? m[1] : t.trim()) + '<\/li>';\r\n    if (\/^\\s*(POKE|SYS|LOAD|PRINT)\\b\/.test(t)) return '<li class=\"code\">' + esc(t.trim()) + '<\/li>';\r\n    if (\/:\\s*$\/.test(t)) return '<li class=\"head\">' + esc(t.trim()) + '<\/li>';\r\n    return '<li>' + esc(m ? m[1] : t) + '<\/li>';\r\n  }\r\n  function render(scroll) {\r\n    var id = path[path.length - 1], n = TREE[id];\r\n    if (!n) { path = ['start']; id = 'start'; n = TREE.start; }\r\n    $('rfdCrumbs').innerHTML = path.map(function (p, i) {\r\n      var last = i === path.length - 1;\r\n      return (i ? '<span>\u203a<\/span>' : '') + (last ? '<span class=\"here\">' + esc(shortT(title(p))) + '<\/span>' : '<button type=\"button\" data-crumb=\"' + i + '\">' + esc(shortT(title(p))) + '<\/button>');\r\n    }).join('');\r\n    $('rfdBack').disabled = path.length < 2;\r\n    var html = '';\r\n    if (n.question) {\r\n      html = '<div class=\"c64\"><div class=\"ready\">1.SYS:&gt;<\/div><div class=\"qq\">? ' + esc(n.question) + '<\/div>' +\r\n        (n.info ? '<div class=\"info\"><b>' + esc(n.info.title) + '<\/b>' + n.info.content.map(function (l) { return l ? esc(l) + '<br>' : '<br>'; }).join('') + '<\/div>' : '') +\r\n        '<div class=\"opts\">' + n.options.map(function (o, i) { return '<button type=\"button\" class=\"opt\" data-next=\"' + esc(o.next) + '\"><span class=\"n\">' + (i < 9 ? (i + 1) : '\u00b7') + '.<\/span><span>' + esc(o.label) + '<\/span><\/button>'; }).join('') + '<\/div>' +\r\n        '<div class=\"ready\" style=\"margin-top:12px\">PREMI 1-' + Math.min(9, n.options.length) + ' <span class=\"cur\"><\/span><\/div><\/div>';\r\n      hotSet = []; renderBoard();\r\n    } else {\r\n      var sev = SEV[n.severity] || ['#7c70da', 'DIAGNOSI'];\r\n      var text = [n.diagnosis].concat(n.checks || [], n.solutions || [], n.notes || [], (n.chipLocations && n.chipLocations.positions) || []).join(' ');\r\n      var chips = chipsInText(text);\r\n      var eq = equipFor(id), links = [], video = null;\r\n      LINK_RULES.forEach(function (r) { if (r[0].test(id)) links = links.concat(r[1]); });\r\n      for (var v = 0; v < VIDEO_RULES.length; v++) if (VIDEO_RULES[v][0].test(id)) { video = VIDEO_RULES[v][1]; break; }\r\n      html = '<div class=\"dg\"><div class=\"dg-head\" style=\"--sev:' + sev[0] + '\"><h3>' + esc(n.diagnosis) + '<\/h3><span class=\"sev\">' + sev[1] + '<\/span><\/div>' +\r\n        '<div class=\"cols\"><div class=\"box\" style=\"--acc:#3fd8ff\"><h4>\ud83d\udd0d VERIFICHE DA FARE<\/h4><ul>' + (n.checks || []).map(li).join('') + '<\/ul><\/div>' +\r\n        '<div class=\"box\" style=\"--acc:#5ad15f\"><h4>\ud83d\udd27 POSSIBILI SOLUZIONI<\/h4><ul>' + (n.solutions || []).map(li).join('') + '<\/ul><\/div><\/div>' +\r\n        (n.chipLocations ? '<div class=\"box\" style=\"--acc:#c09bff\"><h4>\ud83d\udccd ' + esc(n.chipLocations.title.toUpperCase()) + '<\/h4><ul>' + n.chipLocations.positions.map(li).join('') + '<\/ul><\/div>' : '') +\r\n        (n.notes ? '<div class=\"box\" style=\"--acc:#ffd23f\"><h4>\ud83d\udcdd NOTE<\/h4><p>' + esc(n.notes) + '<\/p><\/div>' : '') +\r\n        (chips.length ? '<div class=\"box\" style=\"--acc:#ffd23f\"><h4>\ud83d\udd32 CHIP COINVOLTI' + (CFG.chipNote ? ' (' + esc(CFG.chipNote) + ')' : '') + '<\/h4><div class=\"chips\">' + chips.map(function (k) { var p = k.split('-'), c = CHIPS[B0][+p[0]][1][+p[1]]; return '<button type=\"button\" class=\"chip\" data-chip=\"' + k + '\"><span class=\"u\">' + esc(c[0]) + '<\/span>' + esc(c[2]) + '<\/button>'; }).join('') + '<\/div><\/div>' : '') +\r\n        '<div class=\"box\" style=\"--acc:#f8961e\"><h4>\ud83e\uddf0 ATTREZZATURA PER QUESTA RICERCA<\/h4><div class=\"tools\">' + eq.map(function (k) { var t = TOOLS[k]; return '<div class=\"tool\">' + pix(t[1], t[2]) + '<span>' + esc(t[0]) + '<\/span><\/div>'; }).join('') + '<\/div><\/div>' +\r\n        ((links.length || video) ? '<div class=\"links\">' + links.map(function (l) { return '<a class=\"btn\" href=\"' + l[1] + '\">' + esc(l[0]) + '<\/a>'; }).join('') + (video ? '<a class=\"btn r\" href=\"\/videoteca\/' + (video.charAt(0) === '?' ? video : '?q=' + encodeURIComponent(video)) + '\">\u25b6 VIDEO: ' + esc((VIDEO_LABEL['' + video] || video).toUpperCase()) + '<\/a>' : '') + '<\/div>' : '') +\r\n        '<\/div>';\r\n      if (board !== B0) { board = B0; root.querySelectorAll('.tab').forEach(function (t) { t.classList.toggle('on', t.dataset.b === B0); }); }\r\n      hotSet = chips; renderBoard();\r\n    }\r\n    $('rfdStep').innerHTML = html;\r\n    writeUrl(id);\r\n    if (scroll) $('rfd-diagnosi').scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n  }\r\n  function go(id, scroll) {\r\n    if (!TREE[id]) return;\r\n    var i = path.indexOf(id);\r\n    if (i >= 0) path = path.slice(0, i + 1); else path.push(id);\r\n    render(scroll);\r\n  }\r\n  function jump(id) { path = ['start']; if (id !== 'start') path = pathTo(id) || ['start', id]; render(true); }\r\n  \/\/ percorso dalla domanda iniziale fino a un nodo (per le scorciatoie)\r\n  function pathTo(target) {\r\n    var seen = {}, q = [['start']];\r\n    while (q.length) {\r\n      var p = q.shift(), last = p[p.length - 1];\r\n      if (last === target) return p;\r\n      if (seen[last]) continue; seen[last] = 1;\r\n      var n = TREE[last]; if (n && n.options) n.options.forEach(function (o) { q.push(p.concat(o.next)); });\r\n    }\r\n    return null;\r\n  }\r\n  function writeUrl(id) {\r\n    var p = new URLSearchParams(location.search);\r\n    if (id && id !== 'start') p.set('passo', id); else p.delete('passo');\r\n    var s = p.toString();\r\n    try { history.replaceState(null, '', location.pathname + (s ? '?' + s : '') + location.hash); } catch (e) { \/* ignora *\/ }\r\n  }\r\n\r\n  \/* ---------- ricerca ---------- *\/\r\n  var INDEX = Object.keys(TREE).map(function (k) {\r\n    var n = TREE[k];\r\n    return { id: k, t: title(k), d: !n.question, text: norm([title(k)].concat(n.checks || [], n.solutions || [], n.notes || [], (n.options || []).map(function (o) { return o.label; })).join(' ')) };\r\n  }).filter(function (x) { return x.id !== 'start'; });\r\n  function search(q) {\r\n    var words = norm(q).split(\/\\s+\/).filter(function (w) { return w.length > 1; });\r\n    if (!words.length) { $('rfdRes').innerHTML = ''; return; }\r\n    var res = INDEX.map(function (x) {\r\n      var s = 0; for (var i = 0; i < words.length; i++) { if (x.text.indexOf(words[i]) < 0) return null; if (norm(x.t).indexOf(words[i]) >= 0) s += 3; s += 1; }\r\n      return { x: x, s: s + (x.d ? 1 : 0) };\r\n    }).filter(Boolean).sort(function (a, b) { return b.s - a.s; }).slice(0, 8);\r\n    $('rfdRes').innerHTML = res.length ? res.map(function (r) {\r\n      return '<button type=\"button\" class=\"res\" data-jump=\"' + r.x.id + '\"><span class=\"tp' + (r.x.d ? ' d' : '') + '\">' + (r.x.d ? 'DIAGNOSI' : 'DOMANDA') + '<\/span>' + esc(r.x.t) + '<\/button>';\r\n    }).join('') : '<div class=\"res\" style=\"cursor:default\">?NOT FOUND \u2014 prova con un\\'altra parola, per esempio \"schermo\", \"suono\", \"tastiera\".<\/div>';\r\n  }\r\n\r\n  \/* ---------- eventi ---------- *\/\r\n  var st;\r\n  $('rfdQ').addEventListener('input', function (e) { clearTimeout(st); st = setTimeout(function () { search(e.target.value); }, 120); });\r\n  root.addEventListener('click', function (e) {\r\n    var t;\r\n    if ((t = e.target.closest('[data-next]'))) { go(t.dataset.next, false); var f = $('rfdStep').querySelector('.opt, .dg-head'); if (f) $('rfd-diagnosi').scrollIntoView({ behavior: 'smooth', block: 'start' }); return; }\r\n    if ((t = e.target.closest('[data-crumb]'))) { path = path.slice(0, +t.dataset.crumb + 1); render(false); return; }\r\n    if ((t = e.target.closest('[data-go]'))) { jump(t.dataset.go); return; }\r\n    if ((t = e.target.closest('[data-jump]'))) { $('rfdRes').innerHTML = ''; $('rfdQ').value = ''; jump(t.dataset.jump); return; }\r\n    if ((t = e.target.closest('[data-chip]'))) { chipInfo(t.dataset.chip); $('rfd-chip').scrollIntoView({ behavior: 'smooth', block: 'start' }); return; }\r\n    if ((t = e.target.closest('.ic'))) { chipInfo(t.dataset.c); return; }\r\n    if ((t = e.target.closest('.tab'))) { board = t.dataset.b; root.querySelectorAll('.tab').forEach(function (x) { x.classList.toggle('on', x === t); }); hotSet = board === B0 ? hotSet : []; renderBoard(); $('rfdIcInfo').textContent = 'Seleziona un chip per vedere i dettagli.'; return; }\r\n  });\r\n  $('rfdBack').onclick = function () { if (path.length > 1) { path.pop(); render(false); } };\r\n  $('rfdRestart').onclick = function () { path = ['start']; render(true); };\r\n  $('rfdShare').onclick = function () {\r\n    var url = location.href, done = function () { toast('LINK COPIATO.'); };\r\n    if (navigator.clipboard && navigator.clipboard.writeText) navigator.clipboard.writeText(url).then(done, function () { prompt('Copia il link:', url); });\r\n    else prompt('Copia il link:', url);\r\n  };\r\n  document.addEventListener('keydown', function (e) {\r\n    if (e.target.closest && e.target.closest('input, textarea, select, [contenteditable]')) return;\r\n    if (e.ctrlKey || e.metaKey || e.altKey || !\/^[1-9]$\/.test(e.key)) return;\r\n    var r = $('rfd-diagnosi').getBoundingClientRect();\r\n    if (r.bottom < 0 || r.top > innerHeight) return;\r\n    var b = $('rfdStep').querySelectorAll('.opt')[+e.key - 1];\r\n    if (b) { e.preventDefault(); b.click(); }\r\n  });\r\n  var tt;\r\n  function toast(m) { var t = $('rfdToast'); t.textContent = m; t.classList.add('show'); clearTimeout(tt); tt = setTimeout(function () { t.classList.remove('show'); }, 1800); }\r\n\r\n  var start = new URLSearchParams(location.search).get('passo');\r\n  renderBoard();\r\n  if (start && TREE[start]) { path = pathTo(start) || ['start', start]; render(false); setTimeout(function () { $('rfd-diagnosi').scrollIntoView({ block: 'start' }); }, 300); }\r\n  else render(false);\r\n})();\r\n\r\n}<\/script>\r\n<\/div>\r\n<script type=\"text\/plain\" class=\"rf-en-src\" data-no-translation><link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Press+Start+2P&family=VT323&family=Inter:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n.rfd{\r\n  --bg:#0f0c24; --bg2:#171338; --panel:#1d1846; --line:#342c74; --text:#eceaff; --muted:#aaa5d8;\r\n  --c64:#3e31a2; --c64l:#7c70da; --ink:#b3abff; --mag:#e0398a; --yel:#ffd23f; --grn:#5ad15f; --cya:#3fd8ff; --ora:#f8961e; --red:#f94144;\r\n  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif; color:var(--text); background:var(--bg); line-height:1.55;\r\n  position:relative; padding:44px 0 70px; overflow:hidden;\r\n}\r\n.rfd *,.rfd *::before,.rfd *::after{box-sizing:border-box}\r\n.rfd h2,.rfd h3,.rfd h4,.rfd p,.rfd ul,.rfd ol{margin:0;padding:0}\r\n.rfd h2,.rfd h3,.rfd h4{font-family:'Inter',system-ui,sans-serif!important;letter-spacing:0;text-transform:none;font-weight:700}\r\n.rfd a{color:inherit;text-decoration:none}\r\n.rfd button,.rfd input{font:inherit;color:inherit}\r\n.rfd button{cursor:pointer}\r\n\/* il tema centra il contenuto di tutti i pulsanti: qui lo rimettiamo a posto *\/\r\n.rfd .opt,.rfd .res{justify-content:flex-start!important;text-align:left!important}\r\n.rfd .opt{align-items:baseline!important}\r\n.rfd .ic{display:block!important;text-align:left!important;height:auto!important;line-height:1.3!important}\r\n.rfd [hidden]{display:none!important}\r\n.rfd .wrap{max-width:1200px;margin:0 auto;padding:0 20px}\r\n.rfd .stripe{height:6px;background:linear-gradient(90deg,var(--red) 0 16.6%,var(--ora) 0 33.3%,var(--yel) 0 50%,var(--grn) 0 66.6%,var(--cya) 0 83.3%,var(--c64l) 0);position:absolute;left:0;right:0;top:0}\r\n.rfd .kicker{display:inline-block;font-family:'Press Start 2P',monospace;font-size:10px;color:var(--yel);letter-spacing:.06em;margin-bottom:12px}\r\n.rfd .h2{font-family:'Press Start 2P',monospace!important;font-size:clamp(17px,2.4vw,26px);line-height:1.45;color:#fff;text-shadow:3px 3px 0 #000;margin-bottom:10px;font-weight:400}\r\n.rfd .h3{font-family:'Press Start 2P',monospace!important;font-size:clamp(13px,1.6vw,16px);line-height:1.5;color:#fff;margin-bottom:8px;font-weight:400}\r\n.rfd .sub{color:var(--muted);font-size:15.5px;max-width:720px}\r\n.rfd section{margin-top:56px}\r\n.rfd .head{margin-bottom:20px}\r\n\r\n\/* intestazione *\/\r\n.rfd .top{display:flex;gap:24px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin-bottom:22px}\r\n.rfd .lcd{font-family:'VT323',monospace;font-size:24px;line-height:1.05;color:var(--grn);background:#05040f;border:2px solid #000;border-radius:8px;padding:10px 14px;text-shadow:0 0 6px rgba(90,209,95,.6);white-space:nowrap}\r\n.rfd .lcd small{font-size:17px;color:#3f8f43;display:block}\r\n.rfd .nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}\r\n.rfd .nav a{font-size:13px;font-weight:600;color:var(--muted);border:2px solid var(--line);background:var(--panel);border-radius:999px;padding:6px 12px;transition:color .15s,border-color .15s}\r\n.rfd .nav a:hover{color:#fff;border-color:var(--c64l)}\r\n\r\n\/* ricerca *\/\r\n.rfd .term{background:var(--c64);border:10px solid var(--c64l);border-radius:12px;padding:12px 16px;box-shadow:0 0 0 3px #000,0 18px 40px rgba(0,0,0,.45);position:relative}\r\n.rfd .term::after{content:\"\";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.14) 0 1px,transparent 1px 3px)}\r\n.rfd .term label{display:block;font-family:'VT323',monospace;font-size:20px;color:var(--ink)}\r\n.rfd .qrow{display:flex;align-items:center;gap:10px}\r\n.rfd .qrow span{font-family:'VT323',monospace;font-size:28px;color:#fff}\r\n.rfd .q{flex:1;min-width:0;background:transparent;border:0;outline:0;font-family:'VT323',monospace!important;font-size:28px;color:#fff;caret-color:#fff;padding:2px 0;text-transform:uppercase}\r\n.rfd .q::placeholder{color:#8e86e0;text-transform:none}\r\n.rfd .results{display:grid;gap:6px;margin-top:10px}\r\n.rfd .res{display:flex;gap:10px;align-items:center;text-align:left;background:var(--panel);border:2px solid var(--line);border-radius:10px;padding:10px 12px;color:#fff;font-size:14px}\r\n.rfd .res:hover,.rfd .res:focus-visible{border-color:var(--yel);outline:0}\r\n.rfd .res .tp{font-family:'Press Start 2P',monospace;font-size:7px;padding:4px 6px;border-radius:4px;background:var(--c64l);color:#15102e;flex:none}\r\n.rfd .res .tp.d{background:var(--grn)}\r\n.rfd .res mark{background:var(--yel);color:#15102e;border-radius:2px;padding:0 1px}\r\n\r\n\/* schermate tipiche *\/\r\n.rfd .screens{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}\r\n.rfd .scard{display:flex;flex-direction:column;align-items:stretch!important;gap:10px;text-align:left;background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:12px;transition:transform .18s,border-color .18s,box-shadow .18s}\r\n.rfd .scard:hover,.rfd .scard:focus-visible{transform:translateY(-4px);border-color:var(--yel);box-shadow:0 12px 28px rgba(0,0,0,.45);outline:0}\r\n.rfd .tv{position:relative;width:100%;aspect-ratio:4\/3;border-radius:10px;background:#111;padding:6%;box-shadow:inset 0 0 0 3px #000;container-type:inline-size;overflow:hidden}\r\n.rfd .tv::after{content:\"\";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px),radial-gradient(ellipse at center,transparent 60%,rgba(0,0,0,.45) 100%)}\r\n.rfd .scr{position:absolute;inset:0;background:#7c70da;padding:9% 7%}\r\n.rfd .scr .in{width:100%;height:100%;background:#3e31a2;color:#b3abff;font-family:'VT323',monospace;font-size:4.7cqw;line-height:1.02;white-space:pre;overflow:hidden;padding:1% 1.5%}\r\n.rfd .scr.black,.rfd .scr.black .in{background:#000}\r\n.rfd .scr.nosig{background:#000;display:flex;align-items:center;justify-content:center}\r\n.rfd .scr.nosig b{font-family:'Inter',sans-serif;font-size:5.5cqw;color:#fff;background:#1d4fd8;padding:3% 6%;border-radius:4px}\r\n.rfd .scr.jail .in{background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.09) 0 2.5%,transparent 2.5% 6%)}\r\n.rfd .scard b{font-size:14.5px;color:#fff;line-height:1.3}\r\n.rfd .scard small{font-size:12.5px;color:var(--muted);line-height:1.4}\r\n.rfd .scard .go{font-family:'Press Start 2P',monospace;font-size:8px;color:var(--yel);margin-top:auto}\r\n\r\n\/* diagnosi guidata *\/\r\n.rfd .wiz{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}\r\n.rfd .crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px}\r\n.rfd .crumbs button{background:none;border:0;color:var(--cya);padding:2px 0;font-weight:600}\r\n.rfd .crumbs button:hover{text-decoration:underline}\r\n.rfd .crumbs span{color:var(--muted)}\r\n.rfd .crumbs .here{color:#fff;font-weight:700}\r\n.rfd .c64{background:var(--c64);border:16px solid var(--c64l);border-radius:14px;padding:20px 22px;box-shadow:0 0 0 3px #000,0 24px 50px rgba(0,0,0,.5);position:relative;color:var(--ink);font-family:'VT323',monospace}\r\n.rfd .c64::after{content:\"\";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 1px,transparent 1px 3px)}\r\n.rfd .c64 .ready{font-size:22px;margin-bottom:6px}\r\n.rfd .c64 .qq{font-size:clamp(22px,2.6vw,28px);line-height:1.2;color:#fff;margin-bottom:14px}\r\n.rfd .c64 .info{background:rgba(0,0,0,.22);border:2px dashed var(--ink);border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:19px;line-height:1.25}\r\n.rfd .c64 .info b{display:block;color:#fff;margin-bottom:4px;font-weight:400}\r\n.rfd .opts{display:grid;gap:8px;position:relative;z-index:1}\r\n.rfd .opt{display:flex;gap:12px;align-items:baseline;text-align:left;background:transparent;border:2px solid var(--ink);border-radius:6px;padding:8px 12px;color:#fff;font-family:'VT323',monospace!important;font-size:21px;line-height:1.15;transition:background .1s,color .1s}\r\n.rfd .opt:hover,.rfd .opt:focus-visible{background:var(--ink);color:var(--c64);outline:0}\r\n.rfd .opt .n{flex:none;color:var(--yel)}\r\n.rfd .opt:hover .n,.rfd .opt:focus-visible .n{color:var(--c64)}\r\n.rfd .cur{display:inline-block;width:.55em;height:1em;background:currentColor;vertical-align:-.12em;animation:rfd-blink 1s steps(1) infinite}\r\n@keyframes rfd-blink{50%{opacity:0}}\r\n.rfd .acts{display:flex;flex-wrap:wrap;gap:10px}\r\n.rfd .btn{display:inline-flex;align-items:center;gap:8px;font-family:'Press Start 2P',monospace;font-size:9px;padding:12px 14px;border-radius:8px;border:2px solid var(--line);background:rgba(255,255,255,.04);color:#fff;transition:transform .12s,filter .12s}\r\n.rfd .btn:hover{transform:translateY(-2px);filter:brightness(1.15)}\r\n.rfd .btn.y{background:var(--yel);border-color:var(--yel);color:#231a00;box-shadow:0 4px 0 #a07d00}\r\n.rfd .btn.r{background:#ff0000;border-color:#ff0000;color:#fff;box-shadow:0 4px 0 #8a0000}\r\n\r\n\/* risultato *\/\r\n.rfd .dg{display:grid;gap:14px}\r\n.rfd .dg-head{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;background:var(--panel);border:2px solid var(--line);border-left:8px solid var(--sev);border-radius:12px;padding:16px 18px}\r\n.rfd .dg-head h3{font-size:clamp(18px,2.2vw,23px);color:#fff;line-height:1.3}\r\n.rfd .sev{font-family:'Press Start 2P',monospace;font-size:8px;padding:6px 8px;border-radius:4px;background:var(--sev);color:#15102e;white-space:nowrap}\r\n.rfd .cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}\r\n.rfd .box{background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:16px 18px}\r\n.rfd .box h4{font-family:'Press Start 2P',monospace!important;font-size:9px;font-weight:400;color:var(--acc,var(--yel));margin-bottom:12px;letter-spacing:.04em}\r\n.rfd .box ul{list-style:none;display:grid;gap:7px}\r\n.rfd .box li{font-size:14.5px;color:#dcd8f6;padding-left:18px;position:relative}\r\n.rfd .box li::before{content:\"\u25b8\";position:absolute;left:0;color:var(--acc,var(--yel))}\r\n.rfd .box li.sub{padding-left:34px;color:var(--muted)}\r\n.rfd .box li.sub::before{left:18px;content:\"\u00b7\"}\r\n.rfd .box li.head{padding-left:0;color:#fff;font-weight:600;margin-top:4px}\r\n.rfd .box li.head::before{display:none}\r\n.rfd .box li.code{font-family:'VT323',monospace;font-size:19px;color:var(--grn);padding-left:18px}\r\n.rfd .box li.code::before{content:\">\";color:var(--grn)}\r\n.rfd .box p{font-size:14.5px;color:#dcd8f6}\r\n.rfd .chips{display:flex;flex-wrap:wrap;gap:8px}\r\n.rfd .chip{display:inline-flex;align-items:center;gap:6px;border:2px solid var(--line);background:#15113a;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:600;color:#fff;transition:border-color .15s}\r\n.rfd .chip:hover{border-color:var(--yel)}\r\n.rfd .chip .u{font-family:'VT323',monospace;font-size:17px;color:var(--grn)}\r\n.rfd .tools{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}\r\n.rfd .tool{display:flex;gap:10px;align-items:center;background:#15113a;border:2px solid var(--line);border-radius:10px;padding:8px 10px;font-size:13.5px;color:#fff}\r\n.rfd .tool svg{width:26px;height:26px;flex:none}\r\n.rfd .links{display:flex;flex-wrap:wrap;gap:10px}\r\n\r\n\/* mappa chip *\/\r\n.rfd .tabs{display:flex;gap:8px;margin-bottom:14px}\r\n.rfd .tab{border:2px solid var(--line);background:var(--panel);border-radius:10px;padding:9px 14px;font-size:13.5px;font-weight:600;color:var(--muted)}\r\n.rfd .tab.on{border-color:var(--yel);color:#fff;background:#2a2350}\r\n.rfd .board{background:#0b3d1f;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:18px 18px;\r\n  border:3px solid #062612;border-radius:14px;padding:18px;display:grid;gap:16px}\r\n.rfd .grp b{display:block;font-family:'Press Start 2P',monospace;font-size:8px;color:#a8f0b8;margin-bottom:8px}\r\n.rfd .grp .row{display:flex;flex-wrap:wrap;gap:10px}\r\n.rfd .ic{position:relative;min-width:116px;flex:1 1 116px;max-width:200px;text-align:left;background:#151515;border:2px solid #000;border-radius:4px;padding:10px 10px 10px 14px;color:#e8e8e8;\r\n  box-shadow:0 3px 0 #000;transition:transform .15s,box-shadow .15s,outline-color .15s;outline:3px solid transparent;outline-offset:2px}\r\n.rfd .ic::before{content:\"\";position:absolute;left:5px;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:#444}\r\n.rfd .ic::after{content:\"\";position:absolute;left:0;right:0;top:-5px;height:4px;background:repeating-linear-gradient(90deg,#c9c9c9 0 4px,transparent 4px 9px)}\r\n.rfd .ic .u{font-family:'VT323',monospace;font-size:20px;color:var(--grn);line-height:1}\r\n.rfd .ic .p{display:block;font-size:12.5px;font-weight:700;color:#fff;margin-top:2px}\r\n.rfd .ic .r{display:block;font-size:11.5px;color:#9a9a9a}\r\n.rfd .ic:hover{transform:translateY(-2px)}\r\n.rfd .ic.hot{outline-color:var(--yel);box-shadow:0 0 0 2px var(--yel),0 0 18px rgba(255,210,63,.55);animation:rfd-hot 1.2s ease-in-out infinite}\r\n@keyframes rfd-hot{50%{box-shadow:0 0 0 2px var(--yel),0 0 6px rgba(255,210,63,.2)}}\r\n.rfd .icinfo{margin-top:12px;background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:14px 16px;font-size:14.5px;color:#dcd8f6;min-height:64px}\r\n.rfd .icinfo b{color:#fff}\r\n\r\n\/* schede (periferiche, attrezzatura, link) *\/\r\n.rfd .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}\r\n.rfd .card{display:flex;flex-direction:column;gap:8px;background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:16px;transition:border-color .15s,transform .15s}\r\n.rfd a.card:hover{border-color:var(--c64l);transform:translateY(-3px)}\r\n.rfd .card .ct{display:flex;gap:12px;align-items:center}\r\n.rfd .card svg{width:34px;height:34px;flex:none}\r\n.rfd .card h4{font-size:15px;color:#fff;line-height:1.3}\r\n.rfd .card .tag{font-size:11px;font-weight:700;color:var(--acc,var(--c64l));text-transform:uppercase;letter-spacing:.05em}\r\n.rfd .card p{font-size:13.5px;color:var(--muted)}\r\n.rfd .card .dom{font-size:11.5px;color:#6f68a8;margin-top:auto}\r\n.rfd .warn{display:flex;gap:12px;align-items:flex-start;background:#2a0c14;border:2px solid #7a1d33;border-radius:12px;padding:14px 16px;font-size:14px;color:#ffd6e0;margin-top:16px}\r\n.rfd .warn b{color:#fff}\r\n.rfd .foot{margin-top:40px;font-size:13px;color:var(--muted);text-align:center}\r\n.rfd .toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:#000;border:2px solid var(--grn);color:var(--grn);font-family:'VT323',monospace;font-size:20px;padding:8px 14px;border-radius:8px;opacity:0;transition:opacity .25s;pointer-events:none;z-index:50}\r\n.rfd .toast.show{opacity:1}\r\n\r\n@media (max-width:1024px){.rfd .screens{grid-template-columns:repeat(3,1fr)}.rfd .cards{grid-template-columns:repeat(2,1fr)}}\r\n@media (max-width:760px){\r\n  .rfd .screens{grid-template-columns:repeat(2,1fr);gap:12px}\r\n  .rfd .cols{grid-template-columns:1fr}\r\n  .rfd .c64{border-width:10px;padding:14px}\r\n  .rfd .q,.rfd .qrow span{font-size:23px}\r\n}\r\n@media (max-width:480px){\r\n  .rfd{padding:30px 0 50px}\r\n  .rfd .wrap{padding:0 14px}\r\n  .rfd .cards{grid-template-columns:1fr}\r\n  .rfd .term{border-width:7px;padding:10px 12px}\r\n  .rfd .ic{min-width:46%;max-width:none}\r\n}\r\n@media (prefers-reduced-motion:reduce){.rfd *{transition:none!important}.rfd .ic.hot{animation:none}}\r\n\/* riga del contatore visite (Post Views) prima del footer: diventa un separatore *\/\r\nbody:has(.rfd) .post-views.entry-meta{display:block;margin:0;padding:7px 16px;text-align:center;\r\n  font:12px\/1.4 'Inter',system-ui,sans-serif;color:#aaa5d8;background:#0f0c24;border-top:2px solid #342c74;border-bottom:2px solid #5ad15f}\r\n\/* barra di scelta del computer (in cima alle guide) *\/\r\n.rfd .mach{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:26px;padding:12px 14px;background:var(--bg2);border:2px solid var(--line);border-radius:14px}\r\n.rfd .mach-t{font-family:'Press Start 2P',monospace;font-size:9px;line-height:1.6;color:var(--yel);margin-right:auto}\r\n.rfd .mach-l{display:flex;flex-wrap:wrap;gap:10px}\r\n.rfd .mach a{display:flex;align-items:center;gap:10px;min-width:150px;background:var(--panel);border:2px solid var(--line);border-radius:10px;padding:7px 12px 7px 9px;transition:transform .15s,border-color .15s,box-shadow .15s}\r\n.rfd .mach a:hover,.rfd .mach a:focus-visible{transform:translateY(-2px);border-color:var(--c64l);outline:0}\r\n.rfd .mach a.on{border-color:var(--yel);background:#2a2350;box-shadow:0 0 0 2px rgba(255,210,63,.25)}\r\n.rfd .mach svg{width:74px;height:30px;flex:none;filter:drop-shadow(0 2px 0 #000)}\r\n.rfd .mach b{display:block;font-family:'Press Start 2P',monospace;font-size:10px;color:#fff;font-weight:400;line-height:1.4}\r\n.rfd .mach small{display:block;font-size:11px;color:var(--muted);line-height:1.3}\r\n.rfd .mach a.on small::after{content:\" \u00b7 you are here\";color:var(--yel);font-weight:700}\r\n@media (max-width:760px){.rfd .mach-t{width:100%;margin:0}.rfd .mach-l{width:100%}.rfd .mach a{flex:1 1 30%;min-width:0;flex-direction:column;gap:6px;padding:8px 6px;text-align:center}.rfd .mach a.on small::after{content:\"\"}}\r\n\r\n.rfd{--c64:#0055aa;--c64l:#ff8800;--ink:#ffffff}\r\n.rfd .dgx{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\r\n.rfd .dgx .box h4{font-size:15px;color:#fff;margin:0 0 8px}\r\n.rfd .dgx .box p,.rfd .dgx .box li{font-size:14px;line-height:1.5;color:var(--muted,#c9c4ee)}\r\n.rfd .dgx .box ol,.rfd .dgx .box ul{margin:0;padding-left:20px}\r\n.rfd .dgx .box li{margin:4px 0}\r\n.rfd .dgx .box code{font-family:'VT323',monospace;font-size:17px;color:#7dff8a;background:#07060f;border-radius:4px;padding:0 5px}\r\n.rfd .pins{width:100%;border-collapse:collapse;font-size:14px;margin:6px 0 10px}\r\n.rfd .pins th,.rfd .pins td{border:1px solid var(--line);padding:6px 8px;text-align:left}\r\n.rfd .pins th{background:#0055aa;color:#fff;font-weight:600}\r\n.rfd .pins td{color:#eceaff}\r\n.rfd .pins td b{color:#ff8800}\r\n.rfd .dgx a{color:#3fd8ff;text-decoration:underline}\r\n@media (max-width:760px){.rfd .dgx{grid-template-columns:1fr}}\r\n<\/style>\r\n\r\n<div class=\"rfd\" id=\"rfd\">\r\n  <div class=\"stripe\"><\/div>\r\n  <div class=\"wrap\">\r\n    <nav class=\"mach\" aria-label=\"Choose the computer\">\r\n      <span class=\"mach-t\">FIX YOUR COMMODORE WITH AI<\/span>\r\n      <div class=\"mach-l\"><a href=\"\/en\/guasti-commodore-vic-20\/\"><span><svg viewBox=\"0 0 34 14\" shape-rendering=\"crispEdges\" aria-hidden=\"true\"><rect x=\"1\" y=\"4\" width=\"32\" height=\"9\" fill=\"#efe6cf\"\/><rect x=\"1\" y=\"12\" width=\"32\" height=\"1\" fill=\"#b9ae93\"\/><rect x=\"1\" y=\"4\" width=\"32\" height=\"1\" fill=\"#fffaf0\"\/><rect x=\"3\" y=\"5\" width=\"1\" height=\"1\" fill=\"#f94144\"\/><rect x=\"4\" y=\"5\" width=\"1\" height=\"1\" fill=\"#f8961e\"\/><rect x=\"5\" y=\"5\" width=\"1\" height=\"1\" fill=\"#ffd23f\"\/><rect x=\"6\" y=\"5\" width=\"1\" height=\"1\" fill=\"#5ad15f\"\/><rect x=\"7\" y=\"5\" width=\"1\" height=\"1\" fill=\"#3fd8ff\"\/><rect x=\"3\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"6\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"9\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"12\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"15\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"18\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"21\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"24\" y=\"7\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"4\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"7\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"10\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"13\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"16\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"19\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"22\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"25\" y=\"9\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"3\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"6\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"9\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"12\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"15\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"18\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"21\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"24\" y=\"11\" width=\"2\" height=\"1\" fill=\"#6b4a2b\"\/><rect x=\"29\" y=\"7\" width=\"2\" height=\"1\" fill=\"#e8a33d\"\/><rect x=\"29\" y=\"9\" width=\"2\" height=\"1\" fill=\"#e8a33d\"\/><rect x=\"29\" y=\"11\" width=\"2\" height=\"1\" fill=\"#e8a33d\"\/><\/svg><\/span><span><b>VIC-20<\/b><small>1980 \u00b7 VIC-I<\/small><\/span><\/a><a href=\"\/en\/guasti-commodore-64\/\"><span><svg viewBox=\"0 0 34 14\" shape-rendering=\"crispEdges\" aria-hidden=\"true\"><rect x=\"2\" y=\"3\" width=\"30\" height=\"1\" fill=\"#b3a387\"\/><rect x=\"1\" y=\"4\" width=\"32\" height=\"8\" fill=\"#9c8c74\"\/><rect x=\"1\" y=\"12\" width=\"32\" height=\"1\" fill=\"#6e6250\"\/><rect x=\"3\" y=\"5\" width=\"1\" height=\"1\" fill=\"#f94144\"\/><rect x=\"4\" y=\"5\" width=\"1\" height=\"1\" fill=\"#f8961e\"\/><rect x=\"5\" y=\"5\" width=\"1\" height=\"1\" fill=\"#ffd23f\"\/><rect x=\"6\" y=\"5\" width=\"1\" height=\"1\" fill=\"#5ad15f\"\/><rect x=\"7\" y=\"5\" width=\"1\" height=\"1\" fill=\"#3fd8ff\"\/><rect x=\"3\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"6\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"9\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"12\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"15\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"18\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"21\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"24\" y=\"7\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"4\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"7\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"10\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"13\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"16\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"19\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"22\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"25\" y=\"9\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"3\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"6\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"9\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"12\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"15\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"18\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"21\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"24\" y=\"11\" width=\"2\" height=\"1\" fill=\"#3b2f24\"\/><rect x=\"29\" y=\"7\" width=\"2\" height=\"1\" fill=\"#c9bba0\"\/><rect x=\"29\" y=\"9\" width=\"2\" height=\"1\" fill=\"#c9bba0\"\/><rect x=\"29\" y=\"11\" width=\"2\" height=\"1\" fill=\"#c9bba0\"\/><\/svg><\/span><span><b>C64<\/b><small>1982 \u00b7 VIC-II \/ SID<\/small><\/span><\/a><a href=\"\/en\/guasti-commodore-128\/\"><span><svg viewBox=\"0 0 68 28\" shape-rendering=\"crispEdges\" aria-hidden=\"true\"><rect x=\"2\" y=\"3\" width=\"64\" height=\"6\" fill=\"#8e897b\"\/><rect x=\"2\" y=\"3\" width=\"64\" height=\"1\" fill=\"#a6a193\"\/><rect x=\"55\" y=\"5\" width=\"2\" height=\"1\" fill=\"#5ad15f\"\/><rect x=\"58\" y=\"5\" width=\"2\" height=\"1\" fill=\"#f94144\"\/><rect x=\"2\" y=\"9\" width=\"64\" height=\"1\" fill=\"#6e6a5f\"\/><rect x=\"2\" y=\"10\" width=\"64\" height=\"4\" fill=\"#b8b09a\"\/><rect x=\"6\" y=\"11\" width=\"2\" height=\"2\" fill=\"#f94144\"\/><rect x=\"8\" y=\"11\" width=\"2\" height=\"2\" fill=\"#f8961e\"\/><rect x=\"10\" y=\"11\" width=\"2\" height=\"2\" fill=\"#ffd23f\"\/><rect x=\"12\" y=\"11\" width=\"2\" height=\"2\" fill=\"#5ad15f\"\/><rect x=\"14\" y=\"11\" width=\"2\" height=\"2\" fill=\"#3fd8ff\"\/><rect x=\"56\" y=\"11\" width=\"4\" height=\"2\" fill=\"#d8d0bb\"\/><rect x=\"2\" y=\"14\" width=\"64\" height=\"1\" fill=\"#6e6a5f\"\/><rect x=\"2\" y=\"15\" width=\"64\" height=\"11\" fill=\"#ece4c6\"\/><rect x=\"2\" y=\"26\" width=\"64\" height=\"1\" fill=\"#b9ae93\"\/><rect x=\"5\" y=\"16\" width=\"42\" height=\"9\" fill=\"#2b241b\"\/><rect x=\"6\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"9\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"12\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"15\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"18\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"21\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"24\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"27\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"30\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"33\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"36\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"39\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"42\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"7\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"10\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"13\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"16\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"19\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"22\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"25\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"28\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"31\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"34\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"37\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"40\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"6\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"9\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"12\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"15\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"18\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"21\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"24\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"27\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"30\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"33\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"36\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"39\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"42\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"15\" y=\"23\" width=\"20\" height=\"1\" fill=\"#d9cfae\"\/><rect x=\"50\" y=\"16\" width=\"13\" height=\"9\" fill=\"#2b241b\"\/><rect x=\"51\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"54\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"57\" y=\"17\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"60\" y=\"17\" width=\"2\" height=\"1\" fill=\"#8e897b\"\/><rect x=\"51\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"54\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"57\" y=\"19\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"60\" y=\"19\" width=\"2\" height=\"1\" fill=\"#8e897b\"\/><rect x=\"51\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"54\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"57\" y=\"21\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"60\" y=\"21\" width=\"2\" height=\"1\" fill=\"#8e897b\"\/><rect x=\"51\" y=\"23\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"54\" y=\"23\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"57\" y=\"23\" width=\"2\" height=\"1\" fill=\"#d4d4d4\"\/><rect x=\"60\" y=\"23\" width=\"2\" height=\"1\" fill=\"#8e897b\"\/><\/svg><\/span><span><b>C128<\/b><small>1985 \u00b7 Z80 + 8502<\/small><\/span><\/a><a href=\"\/en\/guasti-amiga\/\"><span><svg viewBox=\"0 0 34 14\" shape-rendering=\"crispEdges\" aria-hidden=\"true\"><rect x=\"1\" y=\"4\" width=\"32\" height=\"9\" fill=\"#ece6d3\"\/><rect x=\"1\" y=\"12\" width=\"32\" height=\"1\" fill=\"#b9b19a\"\/><rect x=\"1\" y=\"4\" width=\"32\" height=\"1\" fill=\"#fffaf0\"\/><rect x=\"3\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"6\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"9\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"12\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"15\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"18\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"21\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"24\" y=\"6\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"4\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"7\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"10\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"13\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"16\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"19\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"22\" y=\"8\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"3\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"6\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"9\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"12\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"15\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"18\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"21\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"24\" y=\"10\" width=\"2\" height=\"1\" fill=\"#55524a\"\/><rect x=\"7\" y=\"11\" width=\"12\" height=\"1\" fill=\"#55524a\"\/><rect x=\"28\" y=\"6\" width=\"3\" height=\"1\" fill=\"#ff8800\"\/><rect x=\"28\" y=\"8\" width=\"1\" height=\"1\" fill=\"#0055aa\"\/><rect x=\"30\" y=\"8\" width=\"1\" height=\"1\" fill=\"#5ad15f\"\/><\/svg><\/span><span><b>Amiga<\/b><small>500 \u00b7 600 \u00b7 1200<\/small><\/span><\/a><\/div>\r\n    <\/nav>\r\n    <div class=\"top\">\r\n      <div>\r\n        <span class=\"kicker\">AMIGA FAULTS<\/span>\r\n        <h2 class=\"h2\">Amiga Doctor: find the fault<\/h2>\r\n        <p class=\"sub\">Start from what you see on the screen or answer a few questions: we'll tell you which chips to check, what equipment you need and how to proceed. Works for the Amiga 500, 500 Plus, 600 and 1200 (and largely for the 1000, 2000 and CD32), with Kickstart 1.2 to 3.x.<\/p>\r\n      <\/div>\r\n      <div class=\"lcd\" id=\"rfdCount\">--- DIAGNOSES<small>SYSTEM READY.<\/small><\/div>\r\n    <\/div>\r\n    <nav class=\"nav\" aria-label=\"Page sections\">\r\n      <a href=\"#rfd-schermi\">\ud83d\udcfa Screens<\/a><a href=\"#rfd-diagnosi\">\ud83e\ude7a Guided diagnosis<\/a><a href=\"#rfd-chip\">\ud83d\udd32 Chip map<\/a>\r\n      <a href=\"#rfd-periferiche\">\ud83d\udd79 Test peripherals<\/a><a href=\"#rfd-attrezzi\">\ud83d\udd27 Equipment<\/a><a href=\"#rfd-schemi\">\ud83d\udcd0 Schematics and documents<\/a><a href=\"#rfd-diagrom\">\ud83e\uddea DiagROM and serial<\/a>\r\n    <\/nav>\r\n\r\n    <div class=\"term\">\r\n      <label for=\"rfdQ\">1&gt; SEARCH SYMPTOM<\/label>\r\n      <div class=\"qrow\"><span aria-hidden=\"true\">&gt;<\/span>\r\n        <input class=\"q\" id=\"rfdQ\" type=\"search\" placeholder=\"e.g. green screen, Guru, Agnus, DiagROM, Caps Lock, Varta, capacitors\u2026\" autocomplete=\"off\" spellcheck=\"false\">\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"results\" id=\"rfdRes\"><\/div>\r\n\r\n    <\\!-- schermate tipiche -->\r\n    <section id=\"rfd-schermi\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">WHAT DO YOU SEE ON THE SCREEN?<\/span>\r\n        <h3 class=\"h3\">Recognise the fault from the screen<\/h3>\r\n        <p class=\"sub\">Simulations of the most common symptoms. Click the one that looks like your screen to go to the diagnosis.<\/p>\r\n      <\/div>\r\n      <div class=\"screens\" id=\"rfdScreens\"><\/div>\r\n    <\/section>\r\n\r\n    <\\!-- diagnosi guidata -->\r\n    <section id=\"rfd-diagnosi\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">GUIDED DIAGNOSIS<\/span>\r\n        <h3 class=\"h3\">Answer the questions<\/h3>\r\n        <p class=\"sub\">You can click the answers or press keys 1-9. The path you've taken stays at the top and you can go back to any step.<\/p>\r\n      <\/div>\r\n      <div class=\"wiz\">\r\n        <div class=\"crumbs\" id=\"rfdCrumbs\"><\/div>\r\n        <div id=\"rfdStep\"><\/div>\r\n        <div class=\"acts\">\r\n          <button class=\"btn\" id=\"rfdBack\" type=\"button\">\u25c0 BACK<\/button>\r\n          <button class=\"btn\" id=\"rfdRestart\" type=\"button\">\u21ba START OVER<\/button>\r\n          <button class=\"btn\" id=\"rfdShare\" type=\"button\">\ud83d\udd17 COPY LINK<\/button>\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n    <\\!-- mappa chip -->\r\n    <section id=\"rfd-chip\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">CHIP MAP<\/span>\r\n        <h3 class=\"h3\">The main Amiga chips<\/h3>\r\n        <p class=\"sub\">Grouped by function (this is not the physical layout on the board). Click a chip to find out what it does and what symptoms it gives when it fails. During the diagnosis, the chips involved light up.<\/p>\r\n      <\/div>\r\n      <div class=\"tabs\" role=\"tablist\" id=\"rfdTabs\"><\/div>\r\n      <div class=\"board\" id=\"rfdBoard\"><\/div>\r\n      <div class=\"icinfo\" id=\"rfdIcInfo\">Select a chip to see the details.<\/div>\r\n    <\/section>\r\n\r\n    <\\!-- periferiche di test -->\r\n    <section id=\"rfd-periferiche\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">PERIPHERALS THAT HELP<\/span>\r\n        <h3 class=\"h3\">Test cartridges and diagnostic tools<\/h3>\r\n        <p class=\"sub\">With these tools, tracking down the fault becomes much quicker, and at the end you can run a full final test.<\/p>\r\n      <\/div>\r\n      <div class=\"cards\" id=\"rfdPeriph\"><\/div>\r\n    <\/section>\r\n\r\n    <\\!-- attrezzatura -->\r\n    <section id=\"rfd-attrezzi\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">EQUIPMENT<\/span>\r\n        <h3 class=\"h3\">What you need on the workbench<\/h3>\r\n        <p class=\"sub\">You don't need everything at once: each diagnosis tells you what you need for that kind of fault.<\/p>\r\n      <\/div>\r\n      <div class=\"cards\" id=\"rfdTools\"><\/div>\r\n      <div class=\"warn\">\u26a0\ufe0f <span><b>Safety.<\/b> Unplug the power supply before opening the Amiga. If you find the nickel battery (the small blue or green Varta barrel), remove it straight away even if the computer works: the leak eats traces and sockets. Measure the power supply before connecting it: +5 V between 4.9 and 5.2 V, +12 V and -12 V.<\/span><\/div>\r\n    <\/section>\r\n\r\n    <\\!-- DiagROM and serial cable -->\r\n    <section id=\"rfd-diagrom\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">ADVANCED DIAGNOSTICS<\/span>\r\n        <h3 class=\"h3\">Test ROMs, the serial cable and what to do when nothing starts<\/h3>\r\n        <p class=\"sub\">When the Amiga sits on a black or coloured screen, a diagnostic ROM in place of the Kickstart tells you what is wrong. And if the screen does not work, you read the results on a PC through a three-wire serial cable.<\/p>\r\n      <\/div>\r\n      <div class=\"dgx\">\r\n        <div class=\"box\">\r\n          <h4>1. Test ROMs and disks<\/h4>\r\n          <ul>\r\n            <li><b>DiagROM<\/b> (free, by John \"Chucky\" Hertell): burn it to an EPROM and fit it in place of the Kickstart. <a href=\"https:\/\/www.diagrom.com\/index.php\/download\/\" target=\"_blank\" rel=\"noopener\">Download<\/a> \u00b7 <a href=\"https:\/\/github.com\/ChuckyGang\/DiagROMV2\" target=\"_blank\" rel=\"noopener\">GitHub<\/a><\/li>\r\n            <li><b>Amiga Test Kit<\/b> (free, by Keir Fraser): a test disk that also boots from a Gotek. It needs an Amiga that gets as far as asking for a disk. <a href=\"https:\/\/github.com\/keirf\/amiga-stuff\/releases\" target=\"_blank\" rel=\"noopener\">Download<\/a><\/li>\r\n            <li><b>kickconv<\/b>, in the same project as Amiga Test Kit: swaps the byte order, splits 32-bit images into high and low and fixes the checksum, so the ROMs burn without mistakes.<\/li>\r\n          <\/ul>\r\n          <h4 style=\"margin-top:12px\">How to fit DiagROM<\/h4>\r\n          <ul>\r\n            <li><b>A500, A500 Plus, A600, A2000:<\/b> a single 16-bit ROM. Use a 27C400 EPROM (or a 27C800\/27C160 with an adapter), with the notch facing the same way as the Kickstart. See <a href=\"\/en\/rom-e-adattatori\/\">ROMs and adapters<\/a>.<\/li>\r\n            <li><b>A1200, A3000, A4000:<\/b> two ROMs, high and low, which together make 32 bits. Swapping them gives a red screen or nothing at all.<\/li>\r\n            <li>Remove every expansion first and, once you are done, refit the original Kickstart.<\/li>\r\n          <\/ul>\r\n        <\/div>\r\n        <div class=\"box\">\r\n          <h4>2. Building the serial cable<\/h4>\r\n          <p>You need a USB-RS232 adapter with a real DB9 connector at RS-232 levels (not the 3.3 V or 5 V TTL modules) and a female DB25 connector for the Amiga serial port (A500, A600, A1200, A2000). Three crossed wires are enough:<\/p>\r\n          <table class=\"pins\">\r\n            <tr><th>Amiga DB25 (female)<\/th><th>PC DB9 (USB adapter)<\/th><\/tr>\r\n            <tr><td><b>2<\/b> TXD, data out<\/td><td><b>2<\/b> RXD, data in<\/td><\/tr>\r\n            <tr><td><b>3<\/b> RXD, data in<\/td><td><b>3<\/b> TXD, data out<\/td><\/tr>\r\n            <tr><td><b>7<\/b> ground<\/td><td><b>5<\/b> ground<\/td><\/tr>\r\n          <\/table>\r\n          <p>Do not connect any other pin: the Amiga port also carries supply voltages and audio. The A1000 has a different pinout.<\/p>\r\n          <p>On the PC open a terminal (<b>PuTTY<\/b> or <b>Tera Term<\/b> on Windows, <code>screen \/dev\/ttyUSB0 9600<\/code> on Linux and macOS) at <b>9600 baud, 8N1, no flow control<\/b>. If you get garbage, try 19200: some test builds of DiagROM 2.0 used that speed.<\/p>\r\n        <\/div>\r\n        <div class=\"box\">\r\n          <h4>3. What DiagROM can do<\/h4>\r\n          <ul>\r\n            <li>At power-up it checks the basic parts and reports how much chip RAM it finds: if memory is faulty it shows the address and the failing bits, and so the chip to replace.<\/li>\r\n            <li>From the menu (mouse, keyboard or serial terminal): memory, CIA (timers and ports), interrupts, keyboard, mouse and joystick, Paula audio, drives and the clock.<\/li>\r\n            <li>Everything shown on screen also goes out on the serial port: with a black screen you work from the PC.<\/li>\r\n            <li>Buttons to hold at power-up (from the DiagROM notes, check those of your version): <b>left mouse button<\/b> = no screen, and fast RAM is used if present (useful with faulty chip RAM); <b>right button<\/b> = use the start of the memory block instead of the end; <b>joystick fire<\/b> = serial off, to start an Amiga with a faulty Paula.<\/li>\r\n          <\/ul>\r\n        <\/div>\r\n        <div class=\"box\">\r\n          <h4>4. If not even DiagROM starts<\/h4>\r\n          <ol>\r\n            <li><b>The ROM:<\/b> burned with the right byte order (kickconv), notch the right way, on the A1200 the two halves in the right sockets. Try the same EPROM in another Amiga if you can.<\/li>\r\n            <li><b>Expansions:<\/b> all out, including the trapdoor memory.<\/li>\r\n            <li><b>Power:<\/b> +5 V on the board between 4.9 and 5.2 V with the computer on.<\/li>\r\n            <li><b>Reset and clock:<\/b> \/RESET must go high and stay there; the crystal (28 MHz on PAL machines) and the CPU clock must be present. \/HALT stuck low = the CPU stopped on a serious error.<\/li>\r\n            <li><b>Is the CPU reading?<\/b> With a logic probe look at the address lines and \/AS: if they do not move, suspect the CPU, Gary (Gayle), Agnus (Alice) and the socket contacts.<\/li>\r\n            <li><b>CIA-A:<\/b> at power-up it makes the ROM appear at address zero (the \/OVL line). If it is faulty the Amiga will not start even with DiagROM: try a spare one.<\/li>\r\n            <li><b>Screen changes but nothing on the PC:<\/b> cable and adapter, the 1488\/1489 serial drivers, or Paula (try holding joystick fire at power-up).<\/li>\r\n            <li><b>Corrosion:<\/b> on the A500 Plus (battery) and on the A600 and A1200 (capacitors) check the traces around the CPU, ROM and CIAs.<\/li>\r\n          <\/ol>\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n    <\\!-- schemi -->\r\n    <section id=\"rfd-schemi\">\r\n      <div class=\"head\">\r\n        <span class=\"kicker\">SCHEMATICS AND DOCUMENTATION<\/span>\r\n        <h3 class=\"h3\">For those who want to repair it themselves<\/h3>\r\n        <p class=\"sub\">Schematics, service manuals and the communities where you can ask for help.<\/p>\r\n      <\/div>\r\n      <div class=\"cards\" id=\"rfdDocs\"><\/div>\r\n    <\/section>\r\n\r\n    <p class=\"foot\">This tool gives general guidance based on the most common faults. For complex repairs, ask an experienced technician or the Amiga community (for example the English Amiga Board).<\/p>\r\n  <\/div>\r\n  <div class=\"toast\" id=\"rfdToast\" role=\"status\"><\/div>\r\n<\/div>\r\n\r\n<script type=\"application\/json\" id=\"rfdData\">{\"start\":{\"question\":\"What is the main problem with your Amiga?\",\"options\":[{\"label\":\"Black screen \/ no picture\",\"next\":\"black\"},{\"label\":\"The screen stays one colour (grey, red, green, blue, yellow)\",\"next\":\"colors\"},{\"label\":\"It asks for a disk but nothing boots\",\"next\":\"floppyBoot\"},{\"label\":\"Guru Meditation, freezes or resets\",\"next\":\"guru\"},{\"label\":\"Wrong colours, lines or a black-and-white picture\",\"next\":\"video\"},{\"label\":\"No sound or noisy audio\",\"next\":\"audio\"},{\"label\":\"Keyboard (dead keys or flashing Caps Lock)\",\"next\":\"keyboard\"},{\"label\":\"Mouse or joystick\",\"next\":\"ports\"},{\"label\":\"Floppy drive (won't read, won't spin, noises)\",\"next\":\"floppyBoot\"},{\"label\":\"It shows less memory than it should\",\"next\":\"memory\"},{\"label\":\"Leaking battery or corrosion\",\"next\":\"battery\"},{\"label\":\"A600, A1200, CD32: capacitors to replace\",\"next\":\"caps\"},{\"label\":\"I want to use the diagnostic ROM (DiagROM)\",\"next\":\"diagrom\"},{\"label\":\"I've repaired it: I want a full final test\",\"next\":\"finalTest\"}]},\"black\":{\"question\":\"Is the power LED on?\",\"options\":[{\"label\":\"No, it is off (or barely lit)\",\"next\":\"psu\"},{\"label\":\"Yes, it is on\",\"next\":\"blackLed\"}]},\"blackLed\":{\"question\":\"At power-up does the DF0 drive LED light briefly, and then, with no disk in, does the drive give a small \\\"click\\\" every two or three seconds?\",\"options\":[{\"label\":\"Yes, it clicks: the drive is looking for a disk\",\"next\":\"videoOut\"},{\"label\":\"No, the drive stays still and silent\",\"next\":\"diagrom\"}]},\"psu\":{\"question\":null,\"diagnosis\":\"Power supply problem\",\"checks\":[\"The Amiga needs +5 V, +12 V and -12 V DC: on the A500 and A1200 they come from the external power brick, on the A2000 from the internal supply\",\"Measure on the connector with the computer plugged in: +5 V between 4.9 and 5.2 V; below 4.75 V the Amiga will not start or will freeze\",\"On the A500 the power LED also dims when the audio filter is switched off: but if it stays completely off or dim, the problem is the power\",\"Check the power supply fuse, the lead and the connector pins (often oxidised or loose)\",\"A chip that gets hot as soon as you switch on points to a short on the board\"],\"solutions\":[\"Replace the capacitors in the original supply or use a modern one with overvoltage protection\",\"The small A1200 brick is just enough for a stock machine: with accelerators and hard disks you need something sturdier\",\"If +5 V drops only with the computer connected, find the short with an IR thermometer or thermal camera\"],\"severity\":\"media\"},\"videoOut\":{\"question\":null,\"diagnosis\":\"The computer starts: the problem is the video output\",\"checks\":[\"The drive click means Kickstart is running: CPU, ROM and chip RAM are doing their job\",\"Try another output: RGB (23-pin socket) with a 1084 monitor or a SCART cable, composite, RF modulator\",\"With a SCART cable the TV must accept 15 kHz RGB and the cable must carry RGB switching (pin 16) and sync\",\"On the A500 the composite output is black and white only and comes from the video hybrid module: if only that one is missing, the module is the suspect\",\"If nothing comes out of any output: Denise (A500, A600) or Lisa (A1200), the RGB buffers, the video encoder on models with colour composite\"],\"solutions\":[\"Use a 1084 monitor or a well-made SCART RGB cable to rule out the TV\",\"Reseat Denise in its socket (on the A500 it comes out and goes back easily)\",\"On the A600 and A1200 check the traces near the video output: leaking capacitors often corrode them\"],\"severity\":\"media\"},\"diagrom\":{\"question\":\"Do you have a DiagROM to fit in place of the Kickstart? (how to prepare it and the serial cable are explained in the DiagROM section further down)\",\"options\":[{\"label\":\"Yes, it starts: it shows its menu or writes to the serial port\",\"next\":\"diagromOk\"},{\"label\":\"Yes, but not even DiagROM starts\",\"next\":\"diagromDead\"},{\"label\":\"I don't have one\",\"next\":\"noStart\"}]},\"diagromOk\":{\"question\":null,\"diagnosis\":\"Read the DiagROM results\",\"checks\":[\"DiagROM writes everything both on screen and to the serial port (9600 baud, 8N1, no flow control): if the screen is black, read the messages on the PC\",\"Look at the start-up part first: how much chip RAM it finds and whether it reports memory errors, with the address and the failing bits\",\"From the menu test memory, CIAs, ports, keyboard, audio (Paula) and drives: each test tells you what is wrong\",\"An error on one chip RAM bit points to the matching DRAM chip (on the A500 they are socketed or soldered near Agnus)\",\"If memory is fine but the real Kickstart will not start, the suspects become the ROM itself (or the ROM pair on the A1200) and its socket\"],\"solutions\":[\"Replace the chip it points to, fitting a socket\",\"If everything passes, refit the Kickstart and try Amiga Test Kit from disk\",\"Keep the serial log: it is also useful when asking for help on forums\"],\"severity\":\"media\"},\"diagromDead\":{\"question\":null,\"diagnosis\":\"Not even DiagROM starts\",\"checks\":[\"Check the DiagROM: burned with the right byte order, notch the right way, on the A1200 the two ROMs in the right sockets (high and low)\",\"Remove every expansion: trapdoor memory, accelerators, PCMCIA cards, external drives\",\"Measure +5 V on the board and watch reset: at power-up the \/RESET line must go high after a moment and stay there; \/HALT stuck low means a serious CPU error\",\"With a scope check the crystal (28 MHz on PAL machines) and the CPU clock (about 7 MHz on the A500 and A600, 14 MHz on the A1200)\",\"With a logic probe look at the CPU address lines and \/AS: if they do not move, the processor is not reading the ROM\",\"Check the sockets again: Agnus in the A500's PLCC socket, the CPU, Gary, the CIAs and the ROM. At power-up CIA-A controls the ROM overlay (\/OVL): if it is faulty the Amiga stays dead\",\"If the screen changes colour but nothing reaches the serial port: cable, adapter (it must be real RS-232), the 1488\/1489 drivers, or Paula\"],\"solutions\":[\"Clean and reseat the socketed chips; on the A600 and A1200 look for corroded traces near the CPU, ROM and CIAs\",\"Try the CPU, CIAs and Gary in another working board or with a suitable chip tester\",\"If the CPU gets no clock, trace back to the crystal and to Agnus (or Alice), which generate the system clocks\"],\"severity\":\"alta\"},\"noStart\":{\"question\":null,\"diagnosis\":\"The processor does not start (without a diagnostic ROM)\",\"checks\":[\"Remove every expansion and try with just mouse, keyboard and one monitor\",\"Clean the contacts and reseat Kickstart, CPU, Agnus, Gary and the CIAs (those in sockets)\",\"Measure the power on the board and check reset and clock with a scope\",\"If you can, get a DiagROM: it starts even when Kickstart cannot and writes to the serial port where it stops\"],\"solutions\":[\"Burn DiagROM to a 27C400 EPROM (A500, A600) or to two EPROMs (A1200) and follow the diagnosis with it\",\"If it comes back to life after cleaning the sockets, fit new sockets where the contacts were oxidised\"],\"severity\":\"alta\"},\"colors\":{\"question\":\"What colour does the screen stay on?\",\"options\":[{\"label\":\"Dark grey\",\"next\":\"darkGrey\"},{\"label\":\"Light grey\",\"next\":\"lightGrey\"},{\"label\":\"Red\",\"next\":\"red\"},{\"label\":\"Green\",\"next\":\"green\"},{\"label\":\"Blue\",\"next\":\"blue\"},{\"label\":\"Yellow\",\"next\":\"yellow\"},{\"label\":\"White or grey with the hand or the disk (asks for a disk)\",\"next\":\"floppyBoot\"}]},\"darkGrey\":{\"question\":null,\"diagnosis\":\"Stuck on dark grey\",\"checks\":[\"Dark grey is the first colour Kickstart sets: the CPU is reading the ROM, but start-up stops right after\",\"Most common suspects: chip RAM or Agnus (on the A500 often just the contact in the PLCC socket), Gary, one of the two CIAs, a badly seated ROM\",\"Remove the trapdoor memory and any other expansion\",\"On the A500 rev 6A check the memory jumper (JP2): with the expansion removed it must be in the 512 KB position\"],\"solutions\":[\"Reseat Agnus with a PLCC extractor and clean the socket\",\"Use DiagROM: it tells you whether chip RAM responds and which bit fails\",\"Try the CIAs by swapping them over or with a spare\"],\"severity\":\"alta\"},\"lightGrey\":{\"question\":null,\"diagnosis\":\"Stuck on light grey\",\"checks\":[\"Light grey comes after the ROM and memory checks: the basic tests passed, but the system does not finish starting\",\"Suspects: one of the two 8520 CIAs (very common), Gary, faulty expansions, the keyboard or its connector\",\"With a ROM that does not suit the model (for example an A1200 Kickstart in an A500) it stops here or does not start\"],\"solutions\":[\"Remove the expansions and unplug the keyboard and peripherals\",\"Try spare CIAs one at a time\",\"Start DiagROM: the CIA test reports timers and ports that do not respond\"],\"severity\":\"alta\"},\"red\":{\"question\":null,\"diagnosis\":\"Red screen: Kickstart ROM error\",\"checks\":[\"Red means the ROM check (checksum) does not add up\",\"Clean the ROM pins and socket and check its orientation\",\"On the A1200 (and A3000, A4000) there are two ROMs, high and low: if they are swapped or from different versions the screen turns red\",\"If the ROM is an EPROM you burned yourself, check the byte order of the image (kickconv fixes it) and the EPROM type\"],\"solutions\":[\"Read the ROM with a programmer and compare it with the original image\",\"Burn a new Kickstart to a 27C400 EPROM (or a 27C800\/27C160 with an adapter)\",\"If the ROM is good but the red stays: ROM traces or socket, data buffers\"],\"severity\":\"media\"},\"green\":{\"question\":null,\"diagnosis\":\"Green screen: chip RAM error\",\"checks\":[\"Green means an error in chip RAM or in the logic that drives it\",\"On the A500 rev 6A chip RAM is 16 \u00d7 41256 chips (512 KB); on the A500 Plus 8 \u00d7 44256 chips (1 MB); on the A600 and A1200 soldered chips\",\"Agnus (Alice on the A1200) generates the chip RAM addresses: it can cause green too\",\"With JP2 on the A500 rev 6A in the 1 MB position, the trapdoor memory becomes chip RAM: remove it and put the jumper back to 512 KB to rule it out\"],\"solutions\":[\"Use DiagROM to find which bit fails and therefore which chip to replace\",\"Test the DRAMs off the board with a chip tester\",\"Reseat Agnus in its socket before desoldering any RAM\"],\"severity\":\"alta\"},\"blue\":{\"question\":null,\"diagnosis\":\"Blue screen: custom chip error\",\"checks\":[\"Blue means a custom chip register does not respond as it should\",\"Suspects: Agnus, Denise or Paula (Alice, Lisa or Paula on the A1200), or their contact in the socket\",\"Check the chips are the right ones for the board (for example a 1 MB Agnus on a board that does not support it)\"],\"solutions\":[\"Reseat the custom chips in their sockets\",\"Try the custom chips in a working Amiga\",\"DiagROM helps you find which chip does not respond\"],\"severity\":\"alta\"},\"yellow\":{\"question\":null,\"diagnosis\":\"Yellow screen: CPU error before the Guru\",\"checks\":[\"Yellow means the CPU hit an error before the system could show a Guru Meditation\",\"The most common cause is an expansion: faulty trapdoor memory, accelerator, side-port cards\",\"Without expansions: CPU, ROM, chip RAM or a short on the data bus\"],\"solutions\":[\"Remove every expansion and try again\",\"If yellow stays, use DiagROM and look at the memory and addressing errors\",\"Reseat the CPU (on the A500 and A2000)\"],\"severity\":\"alta\"},\"floppyBoot\":{\"question\":\"With a disk you know is good, what does the DF0 drive do?\",\"options\":[{\"label\":\"Nothing: it does not spin or make any noise\",\"next\":\"floppyDead\"},{\"label\":\"It spins and seeks, but does not boot (or gives read errors)\",\"next\":\"floppyRead\"},{\"label\":\"It boots, but then freezes or gives a Guru\",\"next\":\"guru\"}]},\"floppyDead\":{\"question\":null,\"diagnosis\":\"The drive does not respond\",\"checks\":[\"Check the ribbon cable and the drive power (on the A500 and A1200 they come through the same connector or separate leads)\",\"Try another drive or a Gotek: if it works, the fault is in the drive\",\"Drive select, motor and head step are driven by CIA-B: if no drive responds it is a suspect\",\"The disk-change and track-0 sensors go to CIA-A\",\"On the A500 a badly fitted DF0 switch or external drive can confuse drive selection\"],\"solutions\":[\"Replace the drive or fit a Gotek to rule out the mechanism\",\"Try Amiga Test Kit (it also boots from a Gotek): the floppy test checks motor, stepping and reading\",\"If the drive is good, try CIA-B\"],\"severity\":\"media\"},\"floppyRead\":{\"question\":null,\"diagnosis\":\"The drive spins but will not read\",\"checks\":[\"Try several disks: old ones lose data or have a damaged surface\",\"Clean the heads with isopropyl alcohol and a cotton bud, without pressing\",\"Check that the head moves smoothly: dried grease on the rails jams it or makes it skip\",\"Check the track-0 sensor and the eject belt or gears\",\"The data read goes to Paula: if two good drives cannot read, Paula or its connection is a suspect\"],\"solutions\":[\"Clean and re-grease the head rails with suitable grease\",\"Use Amiga Test Kit to see whether it reads the tracks and with how many errors\",\"Fit a Gotek if the mechanism cannot be saved\"],\"severity\":\"bassa\"},\"guru\":{\"question\":\"When does the problem appear?\",\"options\":[{\"label\":\"Always at start-up, even with no disk\",\"next\":\"guruHw\"},{\"label\":\"Only with some games or programs\",\"next\":\"guruSw\"},{\"label\":\"After it has been on for a while, when warm\",\"next\":\"heat\"}]},\"guruHw\":{\"question\":null,\"diagnosis\":\"Guru Meditation at every start-up\",\"checks\":[\"Write down the Guru code: numbers that change at every start-up point to memory, ones that stay the same to an expansion or the ROM\",\"Remove every memory expansion and accelerator\",\"Check the power under load: a low +5 V gives random errors\",\"Suspects: chip or fast RAM, CPU, ROM, socket contacts\"],\"solutions\":[\"Test the memory with DiagROM or Amiga Test Kit\",\"Replace the faulty memory, clean the sockets\"],\"severity\":\"media\"},\"guruSw\":{\"question\":null,\"diagnosis\":\"Guru only with some programs\",\"checks\":[\"Many Kickstart 1.3 games do not work with 2.0 or 3.x (and vice versa)\",\"On the A1200 the 68EC020 caches and extra memory can crash older games\",\"With Kickstart 2.0 and later, holding both mouse buttons at power-up opens the early start-up menu: you can disable expansions and caches and choose the chipset\"],\"solutions\":[\"Use the start-up menu or a degrader to get 1.3-like behaviour\",\"For games from hard disk use the WHDLoad versions\",\"If it crashes with every program, go back to the start-up diagnosis\"],\"severity\":\"bassa\"},\"heat\":{\"question\":null,\"diagnosis\":\"Freezes or resets when warm\",\"checks\":[\"Measure +5 V after half an hour: if it drops or wobbles, the power supply is tired\",\"Cool one chip at a time with freeze spray: when it starts working again you have found the culprit\",\"Look for dry joints and corroded traces (on the A600 and A1200 near the capacitors)\",\"A chip much hotter than the others is suspect\"],\"solutions\":[\"Recap or replace the power supply\",\"Resolder doubtful joints and replace the chip that fails with heat\"],\"severity\":\"media\"},\"video\":{\"question\":\"What problem do you see?\",\"options\":[{\"label\":\"Wrong or missing colours\",\"next\":\"badColors\"},{\"label\":\"Lines, flicker or interference\",\"next\":\"noisy\"},{\"label\":\"Black-and-white picture only\",\"next\":\"mono\"}]},\"badColors\":{\"question\":null,\"diagnosis\":\"Wrong or missing colours\",\"checks\":[\"Try another cable and another monitor: a broken red, green or blue wire removes a colour\",\"If the same colour is always missing: Denise (Lisa on the A1200) or the RGB output transistors and buffers\",\"If colours are odd only on composite: the video encoder (CXA1145 or CX2075M) or its capacitors\",\"On the A600 and A1200 leaking capacitors corrode the video traces\"],\"solutions\":[\"Repair the cable or use a good SCART RGB cable\",\"Recap and repair the traces near the video output\",\"Replace Denise or Lisa if the fault shows on every output\"],\"severity\":\"media\"},\"noisy\":{\"question\":null,\"diagnosis\":\"Lines, flicker or interference\",\"checks\":[\"Fixed vertical lines (jail bars) are common on the A1200 and get worse with a noisy power supply\",\"Check the power supply and the filter capacitors on the board\",\"An unshielded SCART cable or one with a broken ground gives interference\",\"Flicker of the whole picture: sync, cable or monitor\"],\"solutions\":[\"Recap the power supply and the board\",\"Use a shielded cable with the right sync\",\"Small mods and filters exist for the A1200 to reduce jail bars\"],\"severity\":\"bassa\"},\"mono\":{\"question\":null,\"diagnosis\":\"Black-and-white picture only\",\"checks\":[\"On the A500 and A2000 the composite output is black and white by design: for colour you need RGB or the A520 modulator\",\"On the A600 and A1200 composite is in colour: if it comes out black and white, check the TV's PAL\/NTSC setting and the video encoder\",\"With a SCART adapter on composite the TV often shows black and white if the standard does not match\"],\"solutions\":[\"Use the RGB output with a SCART cable or a 1084 monitor\",\"On the A600 and A1200 check the video encoder and the colour crystal\"],\"severity\":\"bassa\"},\"audio\":{\"question\":\"How is the audio?\",\"options\":[{\"label\":\"No sound on either channel\",\"next\":\"audioNone\"},{\"label\":\"One channel missing (left or right)\",\"next\":\"audioOne\"},{\"label\":\"Weak, muffled or hissing\",\"next\":\"audioWeak\"}]},\"audioNone\":{\"question\":null,\"diagnosis\":\"No sound\",\"checks\":[\"Try the Amiga's RCA sockets into an amplifier: audio does not go through the RGB output\",\"Audio comes out of Paula and goes through the filter and the op-amps before the sockets\",\"On the A600 and A1200 the most common fault is leaking capacitors near the audio section\",\"Check the op-amp supply (+12 V and -12 V or +5 V depending on the model)\"],\"solutions\":[\"Recap and repair the audio section traces\",\"Replace the filter op-amps\",\"If there is no signal even at Paula's output, Paula is the suspect\"],\"severity\":\"media\"},\"audioOne\":{\"question\":null,\"diagnosis\":\"One channel missing\",\"checks\":[\"Check the RCA socket and its joints, often broken by tugged cables\",\"Follow the missing channel with a scope from Paula to the socket\",\"On the A600 and A1200 look at the capacitors and traces of that channel\"],\"solutions\":[\"Resolder or replace the RCA socket\",\"Replace the op-amp or capacitor of the faulty channel\"],\"severity\":\"bassa\"},\"audioWeak\":{\"question\":null,\"diagnosis\":\"Weak or muffled audio\",\"checks\":[\"Muffled sound may just be the audio filter switched on: software controls it, and on the A500 the power LED dims when the filter is off\",\"Hiss and hum: power, cable ground, capacitors\",\"On the A600 and A1200 leaking SMD electrolytic capacitors weaken or distort the audio\"],\"solutions\":[\"Recap the board (and the power supply)\",\"Use shielded cables and try another amplifier\"],\"severity\":\"bassa\"},\"keyboard\":{\"question\":\"At power-up does the Caps Lock LED flash on its own?\",\"options\":[{\"label\":\"Yes, it flashes\",\"next\":\"kbBlink\"},{\"label\":\"No, but some keys do not work\",\"next\":\"kbKeys\"},{\"label\":\"No key responds\",\"next\":\"kbDead\"}]},\"kbBlink\":{\"question\":null,\"diagnosis\":\"Caps Lock flashes: keyboard error\",\"checks\":[\"The keyboard controller reports its own errors by flashing Caps Lock\",\"1 flash: controller ROM error; 2: its RAM error; 3: watchdog error; 4: short between two matrix lines (often a stuck key)\",\"On the A500 and A2000 the controller is in the keyboard; on the A600 and A1200 it is on the motherboard and the keyboard is just a matrix\"],\"solutions\":[\"With 4 flashes find the pressed key or the short on the membrane\",\"With 1, 2 or 3 flashes the controller is faulty: replace it or use a modern controller\"],\"severity\":\"media\"},\"kbKeys\":{\"question\":null,\"diagnosis\":\"Some keys do not work\",\"checks\":[\"Amiga keyboards use a membrane: its traces break or oxidise\",\"If a group of keys on the same row or column fails, the broken trace is the shared one\",\"On the A600 and A1200 also check the membrane ribbon connector\"],\"solutions\":[\"Clean the contacts and repair the traces with conductive paint\",\"Test the keys with Amiga Test Kit or DiagROM\"],\"severity\":\"bassa\"},\"kbDead\":{\"question\":null,\"diagnosis\":\"No key responds\",\"checks\":[\"Check the keyboard cable and connector\",\"On the A500 the keyboard talks to CIA-A over two lines (clock and data): a fault in CIA-A or its traces blocks the whole keyboard\",\"On the A600 and A1200 check the keyboard controller on the motherboard\"],\"solutions\":[\"Try a working keyboard\",\"Try a spare CIA-A\"],\"severity\":\"media\"},\"ports\":{\"question\":\"What doesn't work?\",\"options\":[{\"label\":\"The pointer does not move or moves one way only\",\"next\":\"mouseMove\"},{\"label\":\"The right (or middle) button does not work\",\"next\":\"rightBtn\"},{\"label\":\"Joystick, left button or fire\",\"next\":\"fireBtn\"}]},\"mouseMove\":{\"question\":null,\"diagnosis\":\"The pointer does not move properly\",\"checks\":[\"Try another mouse and the other port\",\"Movement goes from the ports to Denise (Lisa on the A1200), through resistors and filters\",\"Plugging and unplugging with the computer on can burn the port filters and resistors\"],\"solutions\":[\"Check and replace the port filters and resistors\",\"Test the ports with Amiga Test Kit or DiagROM\"],\"severity\":\"bassa\"},\"rightBtn\":{\"question\":null,\"diagnosis\":\"The right button does not work\",\"checks\":[\"The right and middle buttons use the POT lines, read by Paula\",\"Try another mouse: the microswitches wear out\",\"Check the port resistors and capacitors on those lines\"],\"solutions\":[\"Replace the mouse microswitch\",\"If the problem is on both ports, Paula or its supply is a suspect\"],\"severity\":\"bassa\"},\"fireBtn\":{\"question\":null,\"diagnosis\":\"Joystick or left button\",\"checks\":[\"Fire and the left button go to CIA-A; the joystick directions go through Denise (Lisa)\",\"Try a joystick you know is good and the other port\",\"Check the port resistors and filters\"],\"solutions\":[\"Replace the faulty filters\",\"If fire works on neither port, try CIA-A\"],\"severity\":\"bassa\"},\"memory\":{\"question\":null,\"diagnosis\":\"It shows less memory than it should\",\"checks\":[\"Check how much it sees: with Workbench (Avail in the Shell, or the title bar) or with Amiga Test Kit\",\"A500 rev 6A with a trapdoor expansion: 512 KB chip plus 512 KB slow RAM, or 1 MB chip if jumper JP2 is moved and Agnus is a 1 MB one\",\"The A501 expansion has a clock battery that has often leaked: check traces and connector\",\"On the A1200 a fast RAM card in the trapdoor can conflict with PCMCIA cards\"],\"solutions\":[\"Clean the trapdoor connector and check the expansion memory\",\"Test the memory with DiagROM or Amiga Test Kit\",\"Remove the expansion battery if it is still there\"],\"severity\":\"bassa\"},\"battery\":{\"question\":null,\"diagnosis\":\"Leaking battery\",\"checks\":[\"Nickel clock batteries (Varta) leak a liquid that corrodes copper and solder: they are on the A500 Plus, A2000, A3000 and A501 expansions\",\"Corrosion spreads under the chips and into nearby sockets, and eats traces and vias\",\"On the A500 Plus it often hits the area of the CIAs and the logic chips near the battery\"],\"solutions\":[\"Remove the battery straight away\",\"Neutralise with vinegar or diluted citric acid, then wash with distilled water and isopropyl alcohol\",\"Check every trace with a multimeter and replace corroded sockets\",\"If you need the clock, fit a coin cell holder (with its protection diode) away from the board\"],\"severity\":\"alta\"},\"caps\":{\"question\":null,\"diagnosis\":\"SMD capacitors to replace (A600, A1200, CD32)\",\"checks\":[\"The A600, A1200 and CD32 (like the A3000 and A4000) use SMD electrolytic capacitors that leak electrolyte over time\",\"Symptoms: weak or no audio, odd colours, a drive that will not read, random freezes, sometimes no start at all\",\"The electrolyte corrodes the traces and vias under and around the capacitors: it must be cleaned even where you cannot see it\"],\"solutions\":[\"Replace every electrolytic following the list for your board revision\",\"Clean the board with isopropyl alcohol and check the nearby traces\",\"Use tantalum or good-quality electrolytic capacitors of the same value and voltage\"],\"severity\":\"media\"},\"finalTest\":{\"question\":null,\"diagnosis\":\"Full final test\",\"checks\":[\"Run DiagROM or Amiga Test Kit: memory, CIAs, keyboard, ports, audio and drives\",\"Boot Workbench and a few games from disk\",\"Try every key, both audio channels, mouse and joystick in both ports\",\"Write and read back a disk\",\"Leave the Amiga on for at least an hour: many faults only show when warm\"],\"solutions\":[\"If everything passes, close it up and note what you replaced\",\"Remove the Varta battery if it is still there and use a power supply in good shape\"],\"severity\":\"bassa\"}}<\\\/script>\r\n<script type=\"application\/json\" id=\"rfdCfg\">{\"chipNote\":\"\",\"boards\":[{\"id\":\"a500\",\"label\":\"A500 \/ A500 Plus\",\"groups\":[[\"System core\",[[\"68000\",\"MC68000\",\"CPU\",\"The 7 MHz processor. Socketed: easy to remove and test.\",\"68000|\\\\bCPU\\\\b|processor\"],[\"Agnus\",\"8370\/8371 \u00b7 8372A\",\"DMA and chip RAM\",\"Generates the chip RAM addresses and the clocks. It sits in a PLCC socket: a dirty contact causes many grey or green screens.\",\"Agnus|PLCC\"],[\"Gary\",\"5719\",\"System logic\",\"Decodes addresses and ties together CPU, ROM and peripherals.\",\"Gary\"],[\"Kickstart\",\"40-pin ROM\",\"Operating system\",\"A single 16-bit ROM. It can be replaced with a 27C400 EPROM (DiagROM too).\",\"Kickstart|\\\\bROM\\\\b|EPROM\"]]],[\"Video and audio\",[[\"Denise\",\"8362 \u00b7 8373\",\"Video\",\"Generates the picture and reads mouse movement. Super Denise 8373 on ECS models.\",\"Denise\"],[\"Paula\",\"8364\",\"Audio, floppy, serial\",\"Sound, floppy data, serial port and the POT lines (right button).\",\"Paula\"],[\"Hybrid\",\"Video module\",\"B\/W composite\",\"The module that produces the A500's black-and-white composite output.\",\"hybrid|composite\"]]],[\"Memory and I\/O\",[[\"Chip RAM\",\"41256 \u00d716 \u00b7 44256 \u00d78\",\"512 KB \u00b7 1 MB\",\"16 \u00d7 256 Kbit chips on the A500 rev 6A, 8 \u00d7 44256 chips on the A500 Plus.\",\"chip RAM|DRAM|41256|44256\"],[\"CIA-A\",\"8520\",\"Keyboard, ports, floppy\",\"Keyboard, joystick fire, floppy sensors, LED and the ROM overlay at power-up (\/OVL).\",\"CIA-A|\\\\bCIA\\\\b|8520\"],[\"CIA-B\",\"8520\",\"Floppy and serial\",\"Drive motor, select and step, serial and parallel control lines.\",\"CIA-B|\\\\bCIA\\\\b|8520\"],[\"1488\/1489\",\"RS-232 drivers\",\"Serial port\",\"Carry the serial signals at \u00b112 V.\",\"1488|1489|serial\"]]],[\"Clock and power\",[[\"Crystal\",\"28.37516 MHz\",\"PAL clock\",\"Agnus divides it down to the CPU's 7 MHz.\",\"crystal|clock\"],[\"Battery\",\"Varta (A500 Plus)\",\"Clock\",\"Remove it at once: the leak corrodes the board.\",\"battery|Varta\"]]]]},{\"id\":\"a600\",\"label\":\"A600\",\"groups\":[[\"System core\",[[\"68000\",\"MC68000 (PLCC)\",\"CPU\",\"The 7 MHz processor, surface-mounted.\",\"68000|\\\\bCPU\\\\b|processor\"],[\"Agnus\",\"8375\",\"DMA and chip RAM\",\"ECS Fat Agnus, handles 1 MB of chip RAM.\",\"Agnus\"],[\"Gayle\",\"Gayle\",\"Logic, IDE, PCMCIA\",\"Replaces Gary and handles the IDE hard disk and the PCMCIA port.\",\"Gayle|IDE|PCMCIA\"],[\"Kickstart\",\"2.05 \u00b7 40-pin ROM\",\"Operating system\",\"A single 16-bit ROM, as on the A500.\",\"Kickstart|\\\\bROM\\\\b|EPROM\"]]],[\"Video and audio\",[[\"Denise\",\"8373\",\"Video\",\"ECS Super Denise.\",\"Denise\"],[\"Paula\",\"8364\",\"Audio, floppy, serial\",\"As on the A500.\",\"Paula\"],[\"Encoder\",\"CXA1145 \/ CX2075M\",\"Colour composite\",\"Turns RGB into composite and RF. Often damaged by capacitor corrosion.\",\"encoder|CXA1145|CX2075M|composite\"]]],[\"Memory and I\/O\",[[\"Chip RAM\",\"1 MB SMD\",\"Memory\",\"Surface-mounted chips.\",\"chip RAM|DRAM\"],[\"CIA\",\"8520 \u00d72\",\"Keyboard, ports, floppy\",\"The two CIAs, in PLCC packages.\",\"\\\\bCIA\\\\b|8520|CIA-A|CIA-B\"],[\"Keyboard\",\"Controller\",\"On the motherboard\",\"The controller is on the board; the keyboard is just a matrix on a ribbon cable.\",\"keyboard controller|matrix\"]]],[\"Always check\",[[\"Capacitors\",\"SMD electrolytics\",\"Leak electrolyte\",\"The main cause of A600 faults: audio, video, floppy.\",\"capacitor|electrolytic\"]]]]},{\"id\":\"a1200\",\"label\":\"A1200\",\"groups\":[[\"System core\",[[\"68EC020\",\"MC68EC020\",\"CPU\",\"The 14 MHz processor, surface-mounted.\",\"68EC020|68020|\\\\bCPU\\\\b|processor\"],[\"Alice\",\"8374\",\"DMA and chip RAM\",\"The AGA chipset's Agnus: handles 2 MB of chip RAM.\",\"Alice\"],[\"Gayle\",\"Gayle\",\"Logic, IDE, PCMCIA\",\"Decoding, IDE hard disk and PCMCIA port.\",\"Gayle|IDE|PCMCIA\"],[\"Budgie\",\"Budgie\",\"Bus\",\"Joins the CPU's 32-bit bus to the custom chips' bus.\",\"Budgie\"],[\"Kickstart\",\"3.0 \/ 3.1 \u00b7 2 ROMs\",\"Operating system\",\"Two 16-bit ROMs (high and low) that together make 32 bits: do not swap them.\",\"Kickstart|\\\\bROM\\\\b|EPROM\"]]],[\"Video and audio\",[[\"Lisa\",\"4203\",\"AGA video\",\"Generates the picture (256 colours) and reads the mouse.\",\"Lisa\"],[\"Paula\",\"8364\",\"Audio, floppy, serial\",\"As on the other Amigas.\",\"Paula\"],[\"Encoder\",\"CXA1145 \/ CX2075M\",\"Colour composite\",\"RGB to composite and RF.\",\"encoder|CXA1145|CX2075M|composite\"]]],[\"Memory and I\/O\",[[\"Chip RAM\",\"2 MB SMD\",\"Memory\",\"Surface-mounted chips.\",\"chip RAM|DRAM\"],[\"CIA\",\"8520 \u00d72\",\"Keyboard, ports, floppy\",\"The two CIAs.\",\"\\\\bCIA\\\\b|8520|CIA-A|CIA-B\"],[\"Keyboard\",\"Controller\",\"On the motherboard\",\"The keyboard is a membrane on a ribbon cable.\",\"keyboard controller|membrane\"]]],[\"Always check\",[[\"Capacitors\",\"SMD electrolytics\",\"Leak electrolyte\",\"Audio, video, floppy and start-up: the first thing to sort out on an A1200.\",\"capacitor|electrolytic\"]]]]}],\"screen\":{\"cols\":40,\"border\":\"#0055aa\",\"bg\":\"#0055aa\",\"ink\":\"#ffffff\",\"boot\":[\"New Shell process 1\",\"1.SYS:> avail\",\"Type  Available    In-Use   Maximum\",\"chip     410224     114064    524288\",\"1.SYS:>\"]},\"screens\":[{\"t\":\"Black screen\",\"d\":\"No picture; the power LED may be on or off.\",\"go\":\"black\",\"kind\":\"black\"},{\"t\":\"Dark grey\",\"d\":\"It powers up and stays dark grey.\",\"go\":\"darkGrey\",\"kind\":\"blank\",\"border\":\"#444444\",\"bg\":\"#444444\"},{\"t\":\"Light grey\",\"d\":\"Goes from dark grey to light grey and stops.\",\"go\":\"lightGrey\",\"kind\":\"blank\",\"border\":\"#aaaaaa\",\"bg\":\"#aaaaaa\"},{\"t\":\"Red\",\"d\":\"The whole screen is red.\",\"go\":\"red\",\"kind\":\"blank\",\"border\":\"#ff0000\",\"bg\":\"#ff0000\"},{\"t\":\"Green\",\"d\":\"The whole screen is green.\",\"go\":\"green\",\"kind\":\"blank\",\"border\":\"#00ee00\",\"bg\":\"#00ee00\"},{\"t\":\"Blue\",\"d\":\"The whole screen is blue.\",\"go\":\"blue\",\"kind\":\"blank\",\"border\":\"#0000ff\",\"bg\":\"#0000ff\"},{\"t\":\"Yellow\",\"d\":\"The whole screen is yellow.\",\"go\":\"yellow\",\"kind\":\"blank\",\"border\":\"#ffee00\",\"bg\":\"#ffee00\"},{\"t\":\"Asks for a disk\",\"d\":\"Kickstart waits for a disk, but nothing boots.\",\"go\":\"floppyBoot\",\"kind\":\"text\",\"border\":\"#ffffff\",\"bg\":\"#ffffff\",\"ink\":\"#222222\",\"cursor\":false,\"lines\":[\"\",\"\",\"\",\"        KICKSTART 1.3\",\"\",\"    INSERT WORKBENCH DISK\",\"\",\"\"]},{\"t\":\"Guru Meditation\",\"d\":\"A flashing red box with a code.\",\"go\":\"guru\",\"kind\":\"text\",\"border\":\"#000000\",\"bg\":\"#000000\",\"ink\":\"#ff3030\",\"cursor\":false,\"cols\":46,\"lines\":[\"\",\" Software Failure.  Press left mouse button\",\"            to continue.\",\"\",\"   Guru Meditation #00000004.00C0FF00\",\"\"]},{\"t\":\"Wrong colours\",\"d\":\"There is a picture but the colours are odd or missing.\",\"go\":\"badColors\",\"kind\":\"colorize\",\"seed\":5},{\"t\":\"Vertical lines\",\"d\":\"Bars or interference on the picture.\",\"go\":\"noisy\",\"kind\":\"jail\"},{\"t\":\"Works, I want to test it\",\"d\":\"After a repair: full test.\",\"go\":\"finalTest\",\"kind\":\"text\"}],\"tools\":{\"meter\":[\"Multimeter\",\"meter\",\"#3fd8ff\",\"To measure the supply's +5 V, +12 V and -12 V, fuses and trace continuity.\"],\"probe\":[\"Logic probe\",\"probe\",\"#ffd23f\",\"Cheap and quick: tells you whether a pin is high, low or \\\"moving\\\". Useful on the CPU, ROM, Gary and CIAs.\"],\"eprom\":[\"EPROM programmer\",\"eprom\",\"#5ad15f\",\"To burn DiagROM or a new Kickstart to a 27C400 (or 27C800\/27C160 with an adapter).\"],\"diagrom\":[\"DiagROM\",\"eprom\",\"#e0398a\",\"The diagnostic ROM you fit in place of the Kickstart: tests memory, CIAs, ports, audio and drives and also writes the results to the serial port.\"],\"testkit\":[\"Amiga Test Kit\",\"cart\",\"#f8961e\",\"The free test disk: memory, drives, keyboard, mouse and joystick, audio and video.\"],\"serial\":[\"Serial cable and USB adapter\",\"harness\",\"#3fd8ff\",\"To read DiagROM's messages on a PC even with a black screen.\"],\"plcc\":[\"PLCC extractor\",\"chip\",\"#ffd23f\",\"To pull Agnus out of its A500 socket and refit it without breaking the contacts.\"],\"gotek\":[\"Gotek\",\"socket\",\"#5ad15f\",\"USB-stick floppy emulator: rules out the drive and boots test disks.\"]},\"equip\":[[\"psu|heat\",[\"meter\",\"psu\",\"therm\",\"spray\"]],[\"videoOut|badColors|noisy|mono\",[\"meter\",\"scope\",\"lens\",\"iron\"]],[\"diagrom|diagromOk|diagromDead|noStart|darkGrey|lightGrey|red|green|blue|yellow|guruHw|memory\",[\"diagrom\",\"serial\",\"eprom\",\"scope\",\"probe\",\"plcc\",\"socket\"]],[\"guruSw\",[\"testkit\"]],[\"floppy\",[\"gotek\",\"testkit\",\"alcohol\",\"meter\"]],[\"audio\",[\"scope\",\"meter\",\"iron\",\"lens\"]],[\"kb\",[\"testkit\",\"meter\",\"alcohol\",\"iron\"]],[\"mouseMove|rightBtn|fireBtn\",[\"testkit\",\"meter\",\"iron\"]],[\"battery|caps\",[\"alcohol\",\"iron\",\"lens\",\"meter\",\"socket\"]],[\"finalTest\",[\"diagrom\",\"testkit\",\"gotek\",\"psu\"]]],\"links\":[[\"psu|heat\",[[\"\ud83d\udd0c Power supplies\",\"\/en\/alimentazioni-console-e-computer\/\"],[\"\ud83d\udd27 A500 power supply\",\"\/en\/riparazione-alimentatore-a500\/\"]]],[\"caps|audio|badColors|noisy\",[[\"\ud83e\uddf0 Recapping helper\",\"\/en\/recaping-helper\/\"],[\"\ud83d\udd27 A1200 recap\",\"\/en\/amiga1200-recap\/\"],[\"\ud83d\udd27 A600 recap\",\"\/en\/amiga-600-recap\/\"]]],[\"red|diagrom|diagromDead|noStart\",[[\"\ud83d\udcbe ROMs and adapters\",\"\/en\/rom-e-adattatori\/\"]]],[\"memory\",[[\"\ud83e\udde9 A500 expansion\",\"\/en\/espansione-amiga-500\/\"]]],[\"floppy\",[[\"\ud83d\udcbd A500 DF0 switch\",\"\/en\/selettore-df0-amiga-500\/\"]]]],\"videos\":[[\"battery\",\"?guasto=Batteria\"],[\"caps|audio\",\"?guasto=Condensatori\"],[\"mouseMove|rightBtn|fireBtn\",\"?guasto=Mouse\"],[\".\",\"?q=Amiga\"]],\"videoLabels\":{\"?guasto=Batteria\":\"leaking batteries\",\"?guasto=Condensatori\":\"capacitors\",\"?guasto=Mouse\":\"mouse\",\"?q=Amiga\":\"Amiga\"},\"periph\":[[\"eprom\",\"#e0398a\",\"DiagROM\",\"DIAGNOSTIC ROM\",\"Fits in place of the Kickstart and tests memory, CIAs, ports, audio and drives. It works even with a black screen, because it writes everything to the serial port.\",\"https:\/\/www.diagrom.com\/index.php\/download\/\",\"Download DiagROM\"],[\"cart\",\"#f8961e\",\"Amiga Test Kit\",\"TEST DISK\",\"Free, boots from floppy or Gotek: memory, drives, keyboard, mouse and joystick, audio and video. Ideal for the final test.\",\"https:\/\/github.com\/keirf\/amiga-stuff\/releases\",\"Download Amiga Test Kit\"],[\"harness\",\"#3fd8ff\",\"Serial cable\",\"BUILD IT\",\"Three wires between the Amiga serial port and a USB-RS232 adapter: the pinout is in the DiagROM section below.\",\"#rfd-diagrom\",\"See the cable pinout\"],[\"socket\",\"#5ad15f\",\"Gotek\",\"TEST FLOPPY\",\"USB-stick floppy emulator: rules out the drive and boots test disks without hunting for them.\",null,\"\"],[\"scope\",\"#ffd23f\",\"1084 monitor or SCART RGB cable\",\"VIDEO\",\"To see the Amiga's best picture and tell whether the problem is the computer or the TV.\",null,\"\"],[\"psu\",\"#e0398a\",\"A power supply in good shape\",\"PREVENTION\",\"A recapped original supply or a modern one with overvoltage protection.\",\"\/en\/alimentazioni-console-e-computer\/\",\"See Power supplies\"]],\"docs\":[[\"book\",\"#ffd23f\",\"Big Book of Amiga Hardware\",\"Boards, revisions, chips and schematics of every Amiga.\",\"https:\/\/bigbookofamigahardware.com\/\"],[\"book\",\"#3fd8ff\",\"Amiga Hardware Database\",\"Models, expansions and documentation.\",\"https:\/\/amiga.resource.cx\/\"],[\"eprom\",\"#e0398a\",\"DiagROM\",\"Downloads and news about the diagnostic ROM.\",\"https:\/\/www.diagrom.com\/\"],[\"cart\",\"#f8961e\",\"Amiga Test Kit and kickconv\",\"The test disk and the tool to prepare ROM images.\",\"https:\/\/github.com\/keirf\/amiga-stuff\"],[\"people\",\"#e0398a\",\"English Amiga Board\",\"The go-to forum for Amiga repairs and hardware.\",\"https:\/\/eab.abime.net\/\"],[\"play\",\"#f94144\",\"RetroFixer video library\",\"Our Amiga repair videos.\",\"\/en\/videoteca\/?q=Amiga\"],[\"chip\",\"#7c70da\",\"A1200 recap\",\"How we recapped an A1200.\",\"\/en\/amiga1200-recap\/\"],[\"chip\",\"#7c70da\",\"A600 recap\",\"Recapping an A600 and repairing its traces.\",\"\/en\/amiga-600-recap\/\"]]}<\\\/script>\r\n<script>\r\n(function () {\r\n  var root = document.getElementById('rfd');\r\n  [].forEach.call(root.querySelectorAll('.mach a'), function (a) {\r\n    if (location.pathname.indexOf(a.getAttribute('href')) === 0) { a.classList.add('on'); a.setAttribute('aria-current', 'page'); }\r\n  });\r\n  if (!root || root.dataset.ready) return;\r\n  root.dataset.ready = '1';\r\n  var $ = function (id) { return document.getElementById(id); };\r\n  function esc(s) { return String(s == null ? '' : s).replace(\/[&<>\"']\/g, function (c) { return { '&': '&amp;', '<': '&lt;', '>': '&gt;', '\"': '&quot;', \"'\": '&#39;' }[c]; }); }\r\n  function norm(s) { return String(s || '').toLowerCase().normalize('NFD').replace(\/[\u0300-\u036f]\/g, ''); }\r\n  var TREE = JSON.parse($('rfdData').textContent);\r\n  var CFG = JSON.parse($('rfdCfg').textContent);\r\n  var SEV = { alta: ['#f94144', 'HIGH SEVERITY'], media: ['#ffd23f', 'MEDIUM SEVERITY'], bassa: ['#5ad15f', 'LOW SEVERITY'] };\r\n\r\n  \/* ---------- icone pixel (12x12) ---------- *\/\r\n  var PIX = {\r\n    meter: ['.aaaaaaaaaa.', '.abbbbbbbba.', '.ab.cccc.ba.', '.abbbbbbbba.', '.aaaaaaaaaa.', '.a..aaaa..a.', '.a.a....a.a.', '.a..aaaa..a.', '.aaaaaaaaaa.', '..d......e..', '..d......e..', '..d......e..'],\r\n    scope: ['aaaaaaaaaaaa', 'abbbbbbbbbba', 'ab..c...c.ba', 'ab.c.c.c.cba', 'abc...c...ba', 'abbbbbbbbbba', 'aaaaaaaaaaaa', 'a.dd.dd.dd.a', 'aaaaaaaaaaaa', '............', '............', '............'],\r\n    probe: ['.......aa...', '......abba..', '.....abba...', '....abba....', '...abba.....', '..acca......', '.acca.......', 'acca........', 'aa..........', 'd...........', 'd...........', 'd...........'],\r\n    iron:  ['..........aa', '.........aba', '........aba.', '.......aba..', '......cca...', '.....cc.....', '....cc......', '...dd.......', '..dd........', '.dd.........', 'dd..........', 'd...........'],\r\n    cart:  ['.aaaaaaaaaa.', '.abbbbbbbba.', '.abccccccba.', '.abccccccba.', '.abbbbbbbba.', '.aaaaaaaaaa.', '.aaaaaaaaaa.', '..d.d.d.d...', '..d.d.d.d...', '............', '............', '............'],\r\n    harness: ['aaa......aaa', 'aba......aba', 'aaa......aaa', '.c........c.', '.c........c.', '..cccccccc..', '............', 'aaa......aaa', 'aba......aba', 'aaa......aaa', '.d........d.', '.dddddddddd.'],\r\n    chip:  ['.d.d.d.d.d..', 'aaaaaaaaaaa.', 'abbbbbbbbbad', 'ab.......ba.', 'ab.ccccc.bad', 'ab.......ba.', 'abbbbbbbbbad', 'aaaaaaaaaaa.', '.d.d.d.d.d..', '............', '............', '............'],\r\n    eprom: ['aaaaaaaaaaaa', 'abbbbbbbbbba', 'ab.cccccc.ba', 'ab.c....c.ba', 'ab.cccccc.ba', 'abbbbbbbbbba', 'aaaaaaaaaaaa', '.d.d.d.d.d.d', '............', '............', '............', '............'],\r\n    spray: ['....aa......', '...abba..c..', '....aa..c.c.', '...aaaa...c.', '..abbbba....', '..abbbba....', '..abccba....', '..abccba....', '..abbbba....', '..abbbba....', '..aaaaaa....', '............'],\r\n    therm: ['....aaa.....', '...abbba....', '...abcba....', '...abcba....', '...abcba....', '...abcba....', '..abcccba...', '.abcccccba..', '.abcccccba..', '..abcccba...', '...aaaaa....', '............'],\r\n    psu:   ['aaaaaaaaaaaa', 'abbbbbbbbbba', 'ab.c.c.c..ba', 'abbbbbbbbbba', 'aaaaaaaaaaaa', '.....dd.....', '.....d......', '.....d......', '....ddd.....', '....d.d.....', '............', '............'],\r\n    socket:['aaaaaaaaaaaa', 'a.c.c.c.c.ca', 'a..........a', 'a.c.c.c.c.ca', 'aaaaaaaaaaaa', '.d.d.d.d.d.d', '............', '............', '............', '............', '............', '............'],\r\n    brush: ['..........aa', '.........aa.', '........aa..', '.......aa...', '......aa....', '.....bbb....', '....bbbbb...', '...ccccc....', '..ccccc.....', '.cccc.......', '............', '............'],\r\n    lens:  ['...aaaa.....', '..abbbba....', '.abccccba...', '.abccccba...', '.abccccba...', '..abbbba....', '...aaaa.d...', '........d...', '.........d..', '..........d.', '............', '............'],\r\n    book:  ['aaaaa.aaaaa.', 'abbba.abbba.', 'abbbaaabbba.', 'abbba.abbba.', 'abbba.abbba.', 'abbbaaabbba.', 'aaaaa.aaaaa.', '.....c......', '............', '............', '............', '............'],\r\n    people:['..aa....aa..', '.abba..abba.', '.abba..abba.', '..aa....aa..', '.aaaa..aaaa.', 'aaaaaaaaaaaa', 'aaaaaaaaaaaa', '............', '............', '............', '............', '............'],\r\n    play:  ['aaaaaaaaaaaa', 'a..........a', 'a..b.......a', 'a..bbb.....a', 'a..bbbbb...a', 'a..bbb.....a', 'a..b.......a', 'a..........a', 'aaaaaaaaaaaa', '............', '............', '............']\r\n  };\r\n  function pix(name, col) {\r\n    var m = PIX[name] || PIX.chip, s = '', pal = { a: col, b: '#ffffff', c: '#5ad15f', d: '#9a9a9a', e: '#f94144' };\r\n    for (var y = 0; y < m.length; y++) for (var x = 0; x < m[y].length; x++) { var ch = m[y][x]; if (ch !== '.') s += '<rect x=\"' + x + '\" y=\"' + y + '\" width=\"1.02\" height=\"1.02\" fill=\"' + pal[ch] + '\"\/>'; }\r\n    return '<svg viewBox=\"0 0 12 12\" shape-rendering=\"crispEdges\" aria-hidden=\"true\">' + s + '<\/svg>';\r\n  }\r\n\r\n  \/* ---------- attrezzatura ---------- *\/\r\n  var TOOLS = {\r\n    meter: ['Multimeter', 'meter', '#3fd8ff', 'For measuring 5 V, 9 V AC and 12 V, checking fuses, cables and trace continuity.'],\r\n    scope: ['Oscilloscope', 'scope', '#5ad15f', 'For viewing the clock, video signals and bus activity: essential for black-screen faults.'],\r\n    probe: ['Logic probe', 'probe', '#ffd23f', 'Cheap and quick: it tells you whether a pin is high, low or \"toggling\". Useful on RAM, CPU and PLA.'],\r\n    deadtest: ['Dead Test cartridge', 'cart', '#e0398a', 'Runs even without the KERNAL: tests RAM, ROM and colour RAM and flashes if the screen shows nothing.'],\r\n    diag: ['Diagnostic 586220 + loopback plugs', 'harness', '#f8961e', 'Tests the keyboard, ports, CIAs and SID with the loopback plugs.'],\r\n    chiptester: ['Chip tester', 'chip', '#3fd8ff', 'Tests RAM, ROM and 74xx logic off the board, for example with a Retro Chip Tester.'],\r\n    eprom: ['EPROM programmer', 'eprom', '#5ad15f', 'For replacing the BASIC, KERNAL and Character ROM with new EPROMs (with an adapter).'],\r\n    iron: ['Soldering and desoldering iron', 'iron', '#f94144', 'Temperature-controlled. A solder sucker or a desoldering station saves the traces.'],\r\n    socket: ['Turned-pin sockets', 'socket', '#ffd23f', 'Fit them for the chips you replace: next time you just pull them out.'],\r\n    alcohol: ['Isopropyl alcohol and brush', 'brush', '#3fd8ff', 'For oxidised contacts on ports, connectors and keyboard.'],\r\n    spray: ['Freeze spray \/ hot air', 'spray', '#5ad15f', 'For faults that appear when hot or cold: cool one chip at a time.'],\r\n    therm: ['IR thermometer or thermal camera', 'therm', '#f8961e', 'Finds the chip that runs too hot in seconds (often the shorted one).'],\r\n    psu: ['Safe power supply', 'psu', '#e0398a', 'Modern, with overvoltage protection: it protects the repaired computer.'],\r\n    lens: ['Magnifier or microscope', 'lens', '#3fd8ff', 'For finding cold solder joints, broken traces and broken pins.']\r\n  };\r\n  if (CFG.tools) Object.keys(CFG.tools).forEach(function (k) { TOOLS[k] = CFG.tools[k]; });\r\n  \/\/ attrezzatura, pagine collegate e video: regole dalla configurazione della macchina\r\n  function rules(list) { return (list || []).map(function (r) { return [new RegExp(r[0]), r[1]]; }); }\r\n  var EQUIP_RULES = rules(CFG.equip), LINK_RULES = rules(CFG.links), VIDEO_RULES = rules(CFG.videos);\r\n  var VIDEO_LABEL = CFG.videoLabels || {}; \/\/ etichette per i filtri del tipo \"?macchina=...\"\r\n  function equipFor(id) { for (var i = 0; i < EQUIP_RULES.length; i++) if (EQUIP_RULES[i][0].test(id)) return EQUIP_RULES[i][1]; return ['meter', 'iron']; }\r\n\r\n  \/* ---------- chip ---------- *\/\r\n  var BOARDS = CFG.boards, B0 = BOARDS[0].id, CHIPS = {};\r\n  BOARDS.forEach(function (b) { CHIPS[b.id] = b.groups.map(function (g) { return [g[0], g[1].map(function (c) { return [c[0], c[1], c[2], c[3], new RegExp(c[4])]; })]; }); });\r\n  $('rfdTabs').innerHTML = BOARDS.map(function (b, i) { return '<button type=\"button\" class=\"tab' + (i ? '' : ' on') + '\" data-b=\"' + b.id + '\">' + esc(b.label) + '<\/button>'; }).join('');\r\n  var board = B0, hotSet = [];\r\n  function renderBoard() {\r\n    $('rfdBoard').innerHTML = CHIPS[board].map(function (g, gi) {\r\n      return '<div class=\"grp\"><b>' + esc(g[0].toUpperCase()) + '<\/b><div class=\"row\">' + g[1].map(function (c, ci) {\r\n        var hot = hotSet.indexOf(gi + '-' + ci) >= 0;\r\n        return '<button type=\"button\" class=\"ic' + (hot ? ' hot' : '') + '\" data-c=\"' + gi + '-' + ci + '\"><span class=\"u\">' + esc(c[0]) + '<\/span><span class=\"p\">' + esc(c[1]) + '<\/span><span class=\"r\">' + esc(c[2]) + '<\/span><\/button>';\r\n      }).join('') + '<\/div><\/div>';\r\n    }).join('');\r\n  }\r\n  function chipInfo(key) {\r\n    var p = key.split('-'), c = CHIPS[board][+p[0]][1][+p[1]];\r\n    $('rfdIcInfo').innerHTML = '<b>' + esc(c[0]) + ' \u00b7 ' + esc(c[1]) + '<\/b> \u2014 ' + esc(c[2]) + '<br>' + esc(c[3]);\r\n  }\r\n  function chipsInText(text) {\r\n    var out = [];\r\n    CHIPS[B0].forEach(function (g, gi) { g[1].forEach(function (c, ci) { if (c[4].test(text)) out.push(gi + '-' + ci); }); });\r\n    return out;\r\n  }\r\n\r\n  \/* ---------- schermate tipiche ---------- *\/\r\n  var SCR = CFG.screen;\r\n  function seeded(n) { var s = n; return function () { s = (s * 9301 + 49297) % 233280; return s \/ 233280; }; }\r\n  var PAL = ['#000000', '#ffffff', '#883932', '#67b6bd', '#8b3f96', '#55a049', '#40318d', '#bfce72', '#8b5429', '#574200', '#b86962', '#505050', '#787878', '#94e089', '#7869c4', '#9f9f9f'];\r\n  var GLYPH = '\u2580\u2584\u2588\u258c\u2590\u2591\u2592\u2593\u25a0\u25a1\u25aa\u25c6\u25c7\u25cb\u25cf\u25d8\u25d9\u2660\u2663\u2665\u2666\u2571\u2572\u2573\u253c\u2524\u251c\u252c\u2534\u2502\u2500';\r\n  function scrGarbage(seed, cols, rows) {\r\n    var r = seeded(seed), lines = [];\r\n    for (var y = 0; y < rows; y++) { var l = ''; for (var x = 0; x < cols; x++) l += GLYPH[Math.floor(r() * GLYPH.length)]; lines.push(l); }\r\n    return lines.join('\\n');\r\n  }\r\n  function colorize(text, seed) {\r\n    var r = seeded(seed);\r\n    return text.split('').map(function (ch) { return ch === '\\n' || ch === ' ' ? ch : '<span style=\"color:' + PAL[1 + Math.floor(r() * 15)] + '\">' + esc(ch) + '<\/span>'; }).join('');\r\n  }\r\n  function charrom(text) { var map = '\u2592\u2593\u259a\u259e\u2599\u259f\u259b\u259c\u25a0\u25d8'; return esc(text).replace(\/[A-Z0-9*.()]\/g, function (c) { return map[c.charCodeAt(0) % map.length]; }); }\r\n  function screenHtml(s) {\r\n    if (s.kind === 'nosignal') return '<div class=\"scr nosig\"><b>' + esc(s.label || 'NO SIGNAL') + '<\/b><\/div>';\r\n    if (s.kind === 'black') return '<div class=\"scr black\"><div class=\"in\"><\/div><\/div>';\r\n    var cols = s.cols || SCR.cols, text = (s.lines || SCR.boot).join('\\n') + (s.cursor === false ? '' : '\\n\u2588');\r\n    var fs = Math.min(8.5, 84 \/ (cols * 0.5)).toFixed(2);\r\n    var inner = s.kind === 'blank' ? '' : s.kind === 'garbage' ? scrGarbage(s.seed || 7, cols, s.rows || 12) : s.kind === 'charrom' ? charrom(text) : s.kind === 'colorize' ? colorize(text, s.seed || 3) : esc(text);\r\n    return '<div class=\"scr' + (s.kind === 'jail' ? ' jail' : '') + '\" style=\"background:' + (s.border || SCR.border) + '\"><div class=\"in\" style=\"background-color:' + (s.bg || SCR.bg) + ';color:' + (s.ink || SCR.ink) + ';font-size:' + fs + 'cqw\">' + inner + '<\/div><\/div>';\r\n  }\r\n  var SCREENS = CFG.screens.map(function (s) { return { t: s.t, d: s.d, go: s.go, html: screenHtml(s) }; });\r\n  $('rfdScreens').innerHTML = SCREENS.map(function (s, i) {\r\n    return '<button type=\"button\" class=\"scard\" data-go=\"' + s.go + '\"><div class=\"tv\">' + s.html + '<\/div><b>' + esc(s.t) + '<\/b><small>' + esc(s.d) + '<\/small><span class=\"go\">GO TO DIAGNOSIS \u25b6<\/span><\/button>';\r\n  }).join('');\r\n\r\n  \/* ---------- periferiche, attrezzatura, documenti ---------- *\/\r\n  var PERIPH = CFG.periph;\r\n  $('rfdPeriph').innerHTML = PERIPH.map(function (p) {\r\n    var tag = p[5] ? 'a href=\"' + p[5] + '\"' : 'div';\r\n    return '<' + tag + ' class=\"card\" style=\"--acc:' + p[1] + '\"><div class=\"ct\">' + pix(p[0], p[1]) + '<div><h4>' + esc(p[2]) + '<\/h4><span class=\"tag\">' + esc(p[3]) + '<\/span><\/div><\/div><p>' + esc(p[4]) + '<\/p>' + (p[5] ? '<span class=\"dom\">' + esc(p[6]) + ' \u2192<\/span>' : '') + '<\/' + (p[5] ? 'a' : 'div') + '>';\r\n  }).join('');\r\n  $('rfdTools').innerHTML = Object.keys(TOOLS).map(function (k) {\r\n    var t = TOOLS[k];\r\n    return '<div class=\"card\" style=\"--acc:' + t[2] + '\"><div class=\"ct\">' + pix(t[1], t[2]) + '<h4>' + esc(t[0]) + '<\/h4><\/div><p>' + esc(t[3]) + '<\/p><\/div>';\r\n  }).join('');\r\n  var DOCS = CFG.docs;\r\n  function host(u) { if (u.charAt(0) === '\/') return 'retrofixer.it'; try { return new URL(u).hostname.replace(\/^www\\.\/, ''); } catch (e) { return ''; } }\r\n  $('rfdDocs').innerHTML = DOCS.map(function (d) {\r\n    var ext = d[4].charAt(0) !== '\/';\r\n    return '<a class=\"card\" href=\"' + d[4] + '\"' + (ext ? ' target=\"_blank\" rel=\"noopener\"' : '') + ' style=\"--acc:' + d[1] + '\"><div class=\"ct\">' + pix(d[0], d[1]) + '<h4>' + esc(d[2]) + '<\/h4><\/div><p>' + esc(d[3]) + '<\/p><span class=\"dom\">' + esc(host(d[4])) + (ext ? ' \u2197' : ' \u2192') + '<\/span><\/a>';\r\n  }).join('');\r\n\r\n  \/* ---------- diagnosi guidata ---------- *\/\r\n  var path = ['start'];\r\n  var nodeCount = Object.keys(TREE).filter(function (k) { return !TREE[k].question; }).length;\r\n  $('rfdCount').innerHTML = nodeCount + ' DIAGNOSES<small>SYSTEM READY.<\/small>';\r\n  function title(id) { var n = TREE[id]; if (!n) return id; if (id === 'start') return 'Start'; return n.diagnosis || n.question; }\r\n  function shortT(s) { s = String(s); return s.length > 38 ? s.slice(0, 36) + '\u2026' : s; }\r\n  function li(line) {\r\n    var t = String(line);\r\n    if (!t.trim()) return '';\r\n    var m = \/^\\s*(?:\u2022|-|\u2013)\\s*(.*)$\/.exec(t);\r\n    if (\/^\\s{2,}\/.test(t) || (m && \/^\\s\/.test(t))) return '<li class=\"sub\">' + esc(m ? m[1] : t.trim()) + '<\/li>';\r\n    if (\/^\\s*(POKE|SYS|LOAD|PRINT)\\b\/.test(t)) return '<li class=\"code\">' + esc(t.trim()) + '<\/li>';\r\n    if (\/:\\s*$\/.test(t)) return '<li class=\"head\">' + esc(t.trim()) + '<\/li>';\r\n    return '<li>' + esc(m ? m[1] : t) + '<\/li>';\r\n  }\r\n  function render(scroll) {\r\n    var id = path[path.length - 1], n = TREE[id];\r\n    if (!n) { path = ['start']; id = 'start'; n = TREE.start; }\r\n    $('rfdCrumbs').innerHTML = path.map(function (p, i) {\r\n      var last = i === path.length - 1;\r\n      return (i ? '<span>\u203a<\/span>' : '') + (last ? '<span class=\"here\">' + esc(shortT(title(p))) + '<\/span>' : '<button type=\"button\" data-crumb=\"' + i + '\">' + esc(shortT(title(p))) + '<\/button>');\r\n    }).join('');\r\n    $('rfdBack').disabled = path.length < 2;\r\n    var html = '';\r\n    if (n.question) {\r\n      html = '<div class=\"c64\"><div class=\"ready\">1.SYS:&gt;<\/div><div class=\"qq\">? ' + esc(n.question) + '<\/div>' +\r\n        (n.info ? '<div class=\"info\"><b>' + esc(n.info.title) + '<\/b>' + n.info.content.map(function (l) { return l ? esc(l) + '<br>' : '<br>'; }).join('') + '<\/div>' : '') +\r\n        '<div class=\"opts\">' + n.options.map(function (o, i) { return '<button type=\"button\" class=\"opt\" data-next=\"' + esc(o.next) + '\"><span class=\"n\">' + (i < 9 ? (i + 1) : '\u00b7') + '.<\/span><span>' + esc(o.label) + '<\/span><\/button>'; }).join('') + '<\/div>' +\r\n        '<div class=\"ready\" style=\"margin-top:12px\">PRESS 1-' + Math.min(9, n.options.length) + ' <span class=\"cur\"><\/span><\/div><\/div>';\r\n      hotSet = []; renderBoard();\r\n    } else {\r\n      var sev = SEV[n.severity] || ['#7c70da', 'DIAGNOSIS'];\r\n      var text = [n.diagnosis].concat(n.checks || [], n.solutions || [], n.notes || [], (n.chipLocations && n.chipLocations.positions) || []).join(' ');\r\n      var chips = chipsInText(text);\r\n      var eq = equipFor(id), links = [], video = null;\r\n      LINK_RULES.forEach(function (r) { if (r[0].test(id)) links = links.concat(r[1]); });\r\n      for (var v = 0; v < VIDEO_RULES.length; v++) if (VIDEO_RULES[v][0].test(id)) { video = VIDEO_RULES[v][1]; break; }\r\n      html = '<div class=\"dg\"><div class=\"dg-head\" style=\"--sev:' + sev[0] + '\"><h3>' + esc(n.diagnosis) + '<\/h3><span class=\"sev\">' + sev[1] + '<\/span><\/div>' +\r\n        '<div class=\"cols\"><div class=\"box\" style=\"--acc:#3fd8ff\"><h4>\ud83d\udd0d CHECKS TO MAKE<\/h4><ul>' + (n.checks || []).map(li).join('') + '<\/ul><\/div>' +\r\n        '<div class=\"box\" style=\"--acc:#5ad15f\"><h4>\ud83d\udd27 POSSIBLE SOLUTIONS<\/h4><ul>' + (n.solutions || []).map(li).join('') + '<\/ul><\/div><\/div>' +\r\n        (n.chipLocations ? '<div class=\"box\" style=\"--acc:#c09bff\"><h4>\ud83d\udccd ' + esc(n.chipLocations.title.toUpperCase()) + '<\/h4><ul>' + n.chipLocations.positions.map(li).join('') + '<\/ul><\/div>' : '') +\r\n        (n.notes ? '<div class=\"box\" style=\"--acc:#ffd23f\"><h4>\ud83d\udcdd NOTES<\/h4><p>' + esc(n.notes) + '<\/p><\/div>' : '') +\r\n        (chips.length ? '<div class=\"box\" style=\"--acc:#ffd23f\"><h4>\ud83d\udd32 CHIPS INVOLVED' + (CFG.chipNote ? ' (' + esc(CFG.chipNote) + ')' : '') + '<\/h4><div class=\"chips\">' + chips.map(function (k) { var p = k.split('-'), c = CHIPS[B0][+p[0]][1][+p[1]]; return '<button type=\"button\" class=\"chip\" data-chip=\"' + k + '\"><span class=\"u\">' + esc(c[0]) + '<\/span>' + esc(c[2]) + '<\/button>'; }).join('') + '<\/div><\/div>' : '') +\r\n        '<div class=\"box\" style=\"--acc:#f8961e\"><h4>\ud83e\uddf0 EQUIPMENT FOR THIS JOB<\/h4><div class=\"tools\">' + eq.map(function (k) { var t = TOOLS[k]; return '<div class=\"tool\">' + pix(t[1], t[2]) + '<span>' + esc(t[0]) + '<\/span><\/div>'; }).join('') + '<\/div><\/div>' +\r\n        ((links.length || video) ? '<div class=\"links\">' + links.map(function (l) { return '<a class=\"btn\" href=\"' + l[1] + '\">' + esc(l[0]) + '<\/a>'; }).join('') + (video ? '<a class=\"btn r\" href=\"\/en\/videoteca\/' + (video.charAt(0) === '?' ? video : '?q=' + encodeURIComponent(video)) + '\">\u25b6 VIDEO: ' + esc((VIDEO_LABEL['' + video] || video).toUpperCase()) + '<\/a>' : '') + '<\/div>' : '') +\r\n        '<\/div>';\r\n      if (board !== B0) { board = B0; root.querySelectorAll('.tab').forEach(function (t) { t.classList.toggle('on', t.dataset.b === B0); }); }\r\n      hotSet = chips; renderBoard();\r\n    }\r\n    $('rfdStep').innerHTML = html;\r\n    writeUrl(id);\r\n    if (scroll) $('rfd-diagnosi').scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n  }\r\n  function go(id, scroll) {\r\n    if (!TREE[id]) return;\r\n    var i = path.indexOf(id);\r\n    if (i >= 0) path = path.slice(0, i + 1); else path.push(id);\r\n    render(scroll);\r\n  }\r\n  function jump(id) { path = ['start']; if (id !== 'start') path = pathTo(id) || ['start', id]; render(true); }\r\n  \/\/ percorso dalla domanda iniziale fino a un nodo (per le scorciatoie)\r\n  function pathTo(target) {\r\n    var seen = {}, q = [['start']];\r\n    while (q.length) {\r\n      var p = q.shift(), last = p[p.length - 1];\r\n      if (last === target) return p;\r\n      if (seen[last]) continue; seen[last] = 1;\r\n      var n = TREE[last]; if (n && n.options) n.options.forEach(function (o) { q.push(p.concat(o.next)); });\r\n    }\r\n    return null;\r\n  }\r\n  function writeUrl(id) {\r\n    var p = new URLSearchParams(location.search);\r\n    if (id && id !== 'start') p.set('passo', id); else p.delete('passo');\r\n    var s = p.toString();\r\n    try { history.replaceState(null, '', location.pathname + (s ? '?' + s : '') + location.hash); } catch (e) { \/* ignora *\/ }\r\n  }\r\n\r\n  \/* ---------- ricerca ---------- *\/\r\n  var INDEX = Object.keys(TREE).map(function (k) {\r\n    var n = TREE[k];\r\n    return { id: k, t: title(k), d: !n.question, text: norm([title(k)].concat(n.checks || [], n.solutions || [], n.notes || [], (n.options || []).map(function (o) { return o.label; })).join(' ')) };\r\n  }).filter(function (x) { return x.id !== 'start'; });\r\n  function search(q) {\r\n    var words = norm(q).split(\/\\s+\/).filter(function (w) { return w.length > 1; });\r\n    if (!words.length) { $('rfdRes').innerHTML = ''; return; }\r\n    var res = INDEX.map(function (x) {\r\n      var s = 0; for (var i = 0; i < words.length; i++) { if (x.text.indexOf(words[i]) < 0) return null; if (norm(x.t).indexOf(words[i]) >= 0) s += 3; s += 1; }\r\n      return { x: x, s: s + (x.d ? 1 : 0) };\r\n    }).filter(Boolean).sort(function (a, b) { return b.s - a.s; }).slice(0, 8);\r\n    $('rfdRes').innerHTML = res.length ? res.map(function (r) {\r\n      return '<button type=\"button\" class=\"res\" data-jump=\"' + r.x.id + '\"><span class=\"tp' + (r.x.d ? ' d' : '') + '\">' + (r.x.d ? 'DIAGNOSIS' : 'QUESTION') + '<\/span>' + esc(r.x.t) + '<\/button>';\r\n    }).join('') : '<div class=\"res\" style=\"cursor:default\">?NOT FOUND \u2014 try another word, for example \"screen\", \"sound\", \"keyboard\".<\/div>';\r\n  }\r\n\r\n  \/* ---------- eventi ---------- *\/\r\n  var st;\r\n  $('rfdQ').addEventListener('input', function (e) { clearTimeout(st); st = setTimeout(function () { search(e.target.value); }, 120); });\r\n  root.addEventListener('click', function (e) {\r\n    var t;\r\n    if ((t = e.target.closest('[data-next]'))) { go(t.dataset.next, false); var f = $('rfdStep').querySelector('.opt, .dg-head'); if (f) $('rfd-diagnosi').scrollIntoView({ behavior: 'smooth', block: 'start' }); return; }\r\n    if ((t = e.target.closest('[data-crumb]'))) { path = path.slice(0, +t.dataset.crumb + 1); render(false); return; }\r\n    if ((t = e.target.closest('[data-go]'))) { jump(t.dataset.go); return; }\r\n    if ((t = e.target.closest('[data-jump]'))) { $('rfdRes').innerHTML = ''; $('rfdQ').value = ''; jump(t.dataset.jump); return; }\r\n    if ((t = e.target.closest('[data-chip]'))) { chipInfo(t.dataset.chip); $('rfd-chip').scrollIntoView({ behavior: 'smooth', block: 'start' }); return; }\r\n    if ((t = e.target.closest('.ic'))) { chipInfo(t.dataset.c); return; }\r\n    if ((t = e.target.closest('.tab'))) { board = t.dataset.b; root.querySelectorAll('.tab').forEach(function (x) { x.classList.toggle('on', x === t); }); hotSet = board === B0 ? hotSet : []; renderBoard(); $('rfdIcInfo').textContent = 'Select a chip to see the details.'; return; }\r\n  });\r\n  $('rfdBack').onclick = function () { if (path.length > 1) { path.pop(); render(false); } };\r\n  $('rfdRestart').onclick = function () { path = ['start']; render(true); };\r\n  $('rfdShare').onclick = function () {\r\n    var url = location.href, done = function () { toast('LINK COPIED.'); };\r\n    if (navigator.clipboard && navigator.clipboard.writeText) navigator.clipboard.writeText(url).then(done, function () { prompt('Copy the link:', url); });\r\n    else prompt('Copy the link:', url);\r\n  };\r\n  document.addEventListener('keydown', function (e) {\r\n    if (e.target.closest && e.target.closest('input, textarea, select, [contenteditable]')) return;\r\n    if (e.ctrlKey || e.metaKey || e.altKey || !\/^[1-9]$\/.test(e.key)) return;\r\n    var r = $('rfd-diagnosi').getBoundingClientRect();\r\n    if (r.bottom < 0 || r.top > innerHeight) return;\r\n    var b = $('rfdStep').querySelectorAll('.opt')[+e.key - 1];\r\n    if (b) { e.preventDefault(); b.click(); }\r\n  });\r\n  var tt;\r\n  function toast(m) { var t = $('rfdToast'); t.textContent = m; t.classList.add('show'); clearTimeout(tt); tt = setTimeout(function () { t.classList.remove('show'); }, 1800); }\r\n\r\n  var start = new URLSearchParams(location.search).get('passo');\r\n  renderBoard();\r\n  if (start && TREE[start]) { path = pathTo(start) || ['start', start]; render(false); setTimeout(function () { $('rfd-diagnosi').scrollIntoView({ block: 'start' }); }, 300); }\r\n  else render(false);\r\n})();\r\n<\\\/script><\/script>\r\n<script>(function(){if(!window.RF_EN)return;var s=document.currentScript,src=s.previousElementSibling,it=src.previousElementSibling;var box=document.createElement('div');box.setAttribute('data-no-translation','');box.innerHTML=src.textContent.replace(\/<\\\\(\\\/script|!--)\/gi,'<$1');it.parentNode.replaceChild(box,it);[].forEach.call(box.querySelectorAll('script'),function(o){var n=document.createElement('script');[].forEach.call(o.attributes,function(a){n.setAttribute(a.name,a.value)});n.textContent=o.textContent;o.parentNode.replaceChild(n,o)});})();<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>RIPARA IL TUO COMMODORE CON L&#8217;AI VIC-201980 \u00b7 VIC-IC641982 \u00b7 VIC-II \/ SIDC1281985 \u00b7 Z80 + 8502Amiga500 \u00b7 600 \u00b7 1200 GUASTI AMIGA Amiga Doctor: trova<span class=\"excerpt-hellip\"> [\u2026]<\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-11666","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/pages\/11666","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/comments?post=11666"}],"version-history":[{"count":9,"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/pages\/11666\/revisions"}],"predecessor-version":[{"id":11675,"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/pages\/11666\/revisions\/11675"}],"wp:attachment":[{"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/media?parent=11666"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/categories?post=11666"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/retrofixer.it\/en\/wp-json\/wp\/v2\/tags?post=11666"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}