| |
| en:software:system [2026/04/30 20:41] – creado jesus | en:software:system [2026/05/05 18:55] (actual) – jesus |
|---|
| ~~NOTOC~~ | ~~NOTOC~~ |
| |
| <html> | <html> |
| <style> | <style> |
| /* --- MOTOR VISUAL CRT --- */ | .system-terminal { background-color: #000b00; font-family: 'Courier New', monospace; padding: 30px; color: #00ff00; border: 2px solid #004400; display: flex; flex-direction: column; align-items: center; position: relative; } |
| .system-terminal { background-color: #000b00 !important; font-family: 'Courier New', Courier, monospace !important; padding: 30px; color: #00ff00 !important; border: 2px solid #004400; } | .main-system-title { font-size: 2.2em; color: #00ff00; text-align: center; text-transform: uppercase; font-weight: 900; margin-bottom: 20px; text-shadow: 0 0 15px rgba(0, 255, 0, 0.7); } |
| .main-system-title { font-size: 2.8em; color: #00ff00; text-align: center; text-transform: uppercase; font-weight: 900; margin-bottom: 20px; text-shadow: 0 0 20px rgba(0, 255, 0, 0.7); letter-spacing: 4px; } | .selector-panel { background: rgba(0, 40, 0, 0.3); border: 2px solid #00ff00; padding: 15px; text-align: center; border-radius: 4px; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-bottom: 20px; } |
| | .btn-model { background: transparent; color: #00ff00; border: 1px solid #00ff00; padding: 6px 12px; cursor: pointer; font-family: 'Courier New', monospace; font-weight: bold; transition: 0.3s; font-size: 12px; } |
| /* --- SELECTORES --- */ | .btn-model:hover, .btn-model.active { background: #00ff00 !important; color: #000 !important; box-shadow: 0 0 10px #00ff00; } |
| .selector-panel { background: rgba(0, 40, 0, 0.3); border: 1px solid #004400; padding: 15px; margin-bottom: 30px; text-align: center; border-radius: 4px; } | .lang-selector { margin-bottom: 20px; display: flex; gap: 15px; justify-content: center; min-height: 50px; } |
| .selector-label { display: block; font-size: 10px; color: #008800; text-transform: uppercase; margin-bottom: 8px; font-weight: bold; } | .flag-btn { width: 60px; height: auto; cursor: pointer; border: 1px solid #004400; transition: 0.3s; filter: grayscale(0.7); padding: 2px; background: #111; } |
| .btn-model { background: transparent; color: #00ff00; border: 1px solid #00ff00; padding: 6px 12px; cursor: pointer; font-family: 'Courier New', monospace; font-weight: bold; margin: 0 3px; transition: 0.3s; font-size: 11px; } | .flag-btn:hover, .flag-btn.active { filter: grayscale(0); border-color: #00ff00; transform: scale(1.1); box-shadow: 0 0 10px #00ff00; } |
| .btn-model:hover, .btn-model.active { background: #00ff00; color: #000; box-shadow: 0 0 10px #00ff00; } | |
| .flag-btn { width: 40px; height: auto; cursor: pointer; filter: grayscale(1) opacity(0.5); transition: 0.3s; margin: 0 8px; border: 1px solid transparent; vertical-align: middle; } | |
| .flag-btn:hover, .flag-btn.active { filter: grayscale(0) opacity(1); transform: scale(1.1); border-color: #00ff00; } | |
| | |
| /* --- MONITOR --- */ | |
| #display-screen { border: 2px solid #00ff00; background: rgba(0,30,0,0.4); margin: 20px auto; min-height: 110px; width: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; } | |
| | |
| /* --- DISQUETERA --- */ | |
| .drive-bay { background: linear-gradient(180deg, #222 0%, #111 100%); border: 4px solid #333; width: 360px; height: 100px; margin: 0 auto 30px auto; position: relative; border-radius: 6px; } | |
| .disk-slot { background: #000; width: 310px; height: 10px; margin: 35px auto 0 auto; } | |
| .drive-led { width: 14px; height: 7px; background: #300; position: absolute; bottom: 15px; right: 25px; border-radius: 2px; } | |
| .led-active { background: #ff0000; box-shadow: 0 0 15px #ff0000; animation: led-blink 0.1s infinite; } | |
| @keyframes led-blink { 50% { opacity: 0.3; } } | |
| | |
| /* --- DISCOS --- */ | |
| .disk-shelf { display: none; flex-wrap: wrap; gap: 45px; justify-content: center; margin-top: 50px; perspective: 1200px; } | |
| .disk-wrapper { display: flex; flex-direction: column; align-items: center; gap: 15px; } | |
| .disk-container { width: 175px; height: 225px; position: relative; transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1); transform-style: preserve-3d; } | |
| .is-flipped { transform: rotateY(180deg); } | |
| .disk-face { position: absolute; width: 100%; height: 100%; backface-visibility: hidden; background: #111; border-radius: 4px; border: 1px solid #000; cursor: pointer; } | |
| .disk-back { transform: rotateY(180deg); } | |
| | |
| /* --- EJE BLANCO CON GIRO --- */ | |
| .disk-hub-wrapper { position: absolute; top: 85px; left: 50%; margin-left: -20px; width: 40px; height: 40px; } | |
| .disk-hub-real { width: 100%; height: 100%; background: #fdfdfd; border-radius: 50%; border: 1px solid #ccc; position: relative; } | |
| .disk-hub-real::before { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 8px; height: 8px; background: #000; border-radius: 50%; } | |
| .hub-notch { position: absolute; top: 5px; left: 50%; margin-left: -1.5px; width: 3px; height: 10px; background: #000; border-radius: 1px; } | |
| .spinning { animation: rotate-hub 1s linear infinite !important; } | |
| @keyframes rotate-hub { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } | |
| | |
| .hole-left-rect { position: absolute; top: 12px; left: 22px; width: 6px; height: 10px; background: #fff; border-radius: 1px; } | |
| .hole-right-circ { position: absolute; top: 14px; right: 24px; width: 6px; height: 6px; background: #fff; border-radius: 50%; } | |
| .disk-shutter-silver { position: absolute; top: 15px; left: 50%; transform: translateX(-50%); width: 22px; height: 50px; background: linear-gradient(90deg, #999, #fff, #999); border-radius: 11px; border: 1px solid #555; } | |
| | |
| /* --- ETIQUETA RÉPLICA MAESTRA --- */ | |
| .disk-label-amsoft { position: absolute; bottom: 8px; left: 8px; right: 8px; height: 82px; background: #fff; border-radius: 2px; overflow: hidden; display: flex; flex-direction: column; font-family: Arial, sans-serif; z-index: 10; } | |
| .label-header { height: 22px; padding: 0 6px; display: flex; align-items: flex-end; background: #e18dae; border-bottom: 1px solid #c07090; justify-content: space-between; padding-bottom: 1px; } | |
| .amsoft-logo-text { color: #fff; font-weight: bold; font-style: italic; font-size: 13px; font-family: "Times New Roman", Times, serif; text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000; margin-bottom: -1px; } | |
| .amstrad-subtext-black { color: #000; font-size: 4.8px; font-weight: 900; text-transform: uppercase; line-height: 0.95; text-align: center; margin-bottom: 0px; } | |
| .side-indicator-container { display: flex; align-items: center; gap: 4px; color: #000; font-size: 11px; font-weight: 900; margin-bottom: 0px; } | |
| .arrow-cajetin { background: #fff; border: 1px solid #000; display: flex; align-items: center; justify-content: center; height: 13px; width: 10px; margin-bottom: -1px;} | |
| | |
| .label-body-replica { flex: 1; padding: 4px 6px 0 6px; color: #000; text-align: left; position: relative; display: flex; flex-direction: column; } | #display-screen { border: 1px solid #004400; background: rgba(0,20,0,0.2); width: 100%; min-height: 280px; padding: 20px; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; } |
| .txt-small { font-size: 5.5px; font-weight: bold; display: block; text-transform: uppercase; margin-bottom: 1px; } | .disk-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 15px; justify-items: center; width: 100%; margin-bottom: 25px; } |
| .txt-large-bold { font-size: 11.5px; font-weight: 900; display: block; text-transform: uppercase; line-height: 1; margin-top: 1px; margin-bottom: 5px; } | .disk-item { text-align: center; font-size: 10px; color: #00ff00; font-weight: bold; } |
| .serial-box { position: absolute; right: 6px; top: 3px; border: 0.8px solid #000; padding: 0 3px; font-size: 7.5px; font-family: monospace; font-weight: bold; } | .disk-item img { border: 1px solid #00ff00; background: #000; width: 130px; height: auto; display: block; margin: 0 auto 5px auto; cursor: zoom-in; } |
| .license-text { font-size: 3.9px; font-weight: 700; text-transform: uppercase; line-height: 1.1; text-align: justify; color: #000; letter-spacing: -0.1px; margin-top: auto; margin-bottom: 2px; } | |
| | .download-zone { margin-top: 10px; text-align: center; width: 100%; } |
| .label-footer-grey { background: #e0e0e0; height: 16px; border-top: 0.5px solid #ccc; padding: 0 6px; display: flex; align-items: center; justify-content: flex-start; gap: 5px; } | .btn-download { display: inline-block; background: transparent; color: #ffff00; border: 2px solid #ffff00; padding: 10px 20px; font-family: 'Courier New', monospace; font-weight: bold; cursor: pointer; text-decoration: none; transition: 0.3s; font-size: 13px; } |
| .cs-logo-label { border: 1px solid #000; color: #000; font-size: 6px; font-weight: 900; padding: 0 2px; line-height: 1; } | .btn-download:hover { background: #ffff00; color: #000; box-shadow: 0 0 15px rgba(255,255,0,0.5); } |
| .copy-text-replica { font-size: 3.6px; color: #000; font-weight: bold; text-align: left; line-height: 1.1; } | |
| |
| .flip-btn { background: #004400; color: #00ff00; border: 1px solid #00ff00; font-size: 10px; cursor: pointer; padding: 5px 12px; border-radius: 3px; text-transform: uppercase; font-weight: bold; margin-top: 10px;} | #disk-modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0,11,0,0.9); align-items: center; justify-content: center; flex-direction: column; } |
| | #modal-img { border: 3px solid #00ff00; max-width: 80%; max-height: 80%; } |
| | .close-modal { margin-top: 20px; background: transparent; color: #00ff00; border: 2px solid #00ff00; padding: 10px 20px; cursor: pointer; font-family: 'Courier New', monospace; } |
| </style> | </style> |
| |
| <div class="system-terminal"> | <div class="system-terminal"> |
| <div class="main-system-title">Discos de Sistema</div> | <div class="main-system-title">SYSTEM DISKS</div> |
| <div class="selector-panel"> | <div class="selector-panel"> |
| <div class="selector-group"> | <button class="btn-model" onclick="seleccionarPCW('8256', this)">PCW 8256</button> |
| <span class="selector-label">1. Selecciona el modelo Amstrad PCW</span> | <button class="btn-model" onclick="seleccionarPCW('8512', this)">PCW 8512</button> |
| <button class="btn-model" onclick="selectModel('8256', this)">PCW 8256</button> | <button class="btn-model" onclick="seleccionarPCW('9512', this)">PCW 9512</button> |
| <button class="btn-model" onclick="selectModel('8512', this)">PCW 8512</button> | <button class="btn-model" onclick="seleccionarPCW('9256', this)">PCW 9256</button> |
| <button class="btn-model" onclick="selectModel('9512', this)">PCW 9512</button> | <button class="btn-model" onclick="seleccionarPCW('9512plus', this)">PCW 9512+</button> |
| <button class="btn-model" onclick="selectModel('9512p', this)">PCW 9512+</button> | <button class="btn-model" onclick="seleccionarPCW('10', this)">PCW 10</button> |
| <button class="btn-model" onclick="selectModel('10', this)">PCW 10</button> | <button class="btn-model" onclick="seleccionarPCW('16', this)">PCW 16</button> |
| <button class="btn-model" onclick="selectModel('16', this)">PCW 16</button> | |
| </div> | |
| <div class="selector-group" id="lang-selector" style="display:none;"> | |
| <span class="selector-label">2. Selecciona el idioma</span> | |
| <img src="/lib/exe/fetch.php?media=botones:espana.jpg" class="flag-btn" id="flag-es" onclick="selectLang('es', this, 'ESPAÑOL')"> | |
| <img src="/lib/exe/fetch.php?media=botones:reino_unido.jpg" class="flag-btn" id="flag-uk" onclick="selectLang('uk', this, 'INGLÉS')"> | |
| <img src="/lib/exe/fetch.php?media=botones:francia.jpg" class="flag-btn" id="flag-fr" onclick="selectLang('fr', this, 'FRANCÉS')"> | |
| <img src="/lib/exe/fetch.php?media=botones:alemania.jpg" class="flag-btn" id="flag-de" onclick="selectLang('de', this, 'ALEMÁN')"> | |
| </div> | |
| </div> | </div> |
| | <div id="lang-container" class="lang-selector"></div> |
| | <div id="display-screen"><div style="text-align:center; padding-top:100px; opacity:0.5;">SELECT MODEL:</div></div> |
| | </div> |
| |
| <div class="drive-bay"><div class="disk-slot"></div><div class="drive-led" id="drive-led"></div></div> | <div id="disk-modal" onclick="cerrarZoom()"> |
| <div id="display-screen"><div id="status-msg">SELECCIONE MODELO E IDIOMA...</div><div id="download-zone" style="display: none; margin-top: 5px;"><div id="buttons-container"></div></div></div> | <img id="modal-img" src=""> |
| | <button class="close-modal">CLOSE [ESC]</button> |
| <div id="shelf-es-3inch" class="disk-shelf"> | |
| <!-- DISCO 1 --> | |
| <div class="disk-wrapper"> | |
| <div class="disk-container" id="disk1"> | |
| <!-- CARA A --> | |
| <div class="disk-face disk-front" onclick="handleDiskClick('LOCO SCRIPT', 'DISCO 1 CARA A', 'hub1a')"> | |
| <div class="hole-left-rect"></div><div class="hole-right-circ"></div><div class="disk-shutter-silver"></div> | |
| <div class="disk-hub-wrapper"><div class="disk-hub-real" id="hub1a"><div class="hub-notch"></div></div></div> | |
| <div class="disk-label-amsoft"> | |
| <div class="label-header"><span class="amsoft-logo-text">Amsoft</span><span class="amstrad-subtext-black">AMSTRAD CONSUMER<br>ELECTRONICS plc</span><div class="side-indicator-container">1 <div class="arrow-cajetin">↑</div></div></div> | |
| <div class="label-body-replica"> | |
| <span class="txt-small">PROCESADOR DE TEXTOS.</span><span class="txt-large-bold">LOCO SCRIPT</span><div class="serial-box">2433345</div> | |
| <div class="license-text">EL USO DE ESTOS PROGRAMAS ESTA SUJETO A LAS CONDICIONES DEL<br>ACUERDO DE LICENCIA DE USUARIO FINAL ESTABLECIDAS EN EL APENDICE...</div> | |
| </div> | |
| <div class="label-footer-grey"><div class="cs-logo-label">CS</div><span class="copy-text-replica">PROGRAMAS COPYRIGHT © 1985 LOCOMOTIVE SOFTWARE LTD<br>& AMSTRAD CONSUMER ELECTRONICS plc.</span></div> | |
| </div> | |
| </div> | |
| <!-- CARA B --> | |
| <div class="disk-face disk-back" onclick="handleDiskClick('CP/M PLUS', 'DISCO 1 CARA B', 'hub1b')"> | |
| <div class="hole-left-rect"></div><div class="hole-right-circ"></div><div class="disk-shutter-silver"></div> | |
| <div class="disk-hub-wrapper"><div class="disk-hub-real" id="hub1b"><div class="hub-notch"></div></div></div> | |
| <div class="disk-label-amsoft"> | |
| <div class="label-header"><div class="side-indicator-container">2 <div class="arrow-cajetin">↓</div></div><span class="amsoft-logo-text">Amsoft</span><span class="amstrad-subtext-black">AMSTRAD CONSUMER<br>ELECTRONICS plc</span></div> | |
| <div class="label-body-replica"> | |
| <span class="txt-small">SISTEMA OPERATIVO.</span><span class="txt-large-bold">CP/M PLUS</span><div class="serial-box">2433346</div> | |
| <div class="license-text">EL USO DE ESTOS PROGRAMAS ESTA SUJETO A LAS CONDICIONES DEL<br>ACUERDO DE LICENCIA DE USUARIO FINAL ESTABLECIDAS EN EL APENDICE...</div> | |
| </div> | |
| <div class="label-footer-grey"><div class="cs-logo-label">CS</div><span class="copy-text-replica">PROGRAMAS COPYRIGHT © 1985 DIGITAL RESEARCH INC.<br>& AMSTRAD CONSUMER ELECTRONICS plc.</span></div> | |
| </div> | |
| </div> | |
| </div> | |
| <button class="flip-btn" onclick="toggleFlip('disk1')">⟲ GIRAR DISCO 1</button> | |
| </div> | |
| <!-- DISCO 2 --> | |
| <div class="disk-wrapper"> | |
| <div class="disk-container" id="disk2"> | |
| <!-- CARA A --> | |
| <div class="disk-face disk-front" onclick="handleDiskClick('UTILIDADES', 'DISCO 2 CARA A', 'hub2a')"> | |
| <div class="hole-left-rect"></div><div class="hole-right-circ"></div><div class="disk-shutter-silver"></div> | |
| <div class="disk-hub-wrapper"><div class="disk-hub-real" id="hub2a"><div class="hub-notch"></div></div></div> | |
| <div class="disk-label-amsoft"> | |
| <div class="label-header"><span class="amsoft-logo-text">Amsoft</span><span class="amstrad-subtext-black">AMSTRAD CONSUMER<br>ELECTRONICS plc</span><div class="side-indicator-container">3 <div class="arrow-cajetin">↑</div></div></div> | |
| <div class="label-body-replica"> | |
| <span class="txt-small">CONFIGURACIÓN SISTEMA.</span><span class="txt-large-bold">UTILIDADES</span><div class="serial-box">2433347</div> | |
| <div class="license-text">EL USO DE ESTOS PROGRAMAS ESTA SUJETO A LAS CONDICIONES DEL<br>ACUERDO DE LICENCIA DE USUARIO FINAL ESTABLECIDAS EN EL APENDICE...</div> | |
| </div> | |
| <div class="label-footer-grey"><div class="cs-logo-label">CS</div><span class="copy-text-replica">PROGRAMAS COPYRIGHT © 1985 AMSTRAD C.E. plc.<br>SERIE ESPAÑOLA DISCO 3</span></div> | |
| </div> | |
| </div> | |
| <!-- CARA B --> | |
| <div class="disk-face disk-back" onclick="handleDiskClick('DR. LOGO', 'DISCO 2 CARA B', 'hub2b')"> | |
| <div class="hole-left-rect"></div><div class="hole-right-circ"></div><div class="disk-shutter-silver"></div> | |
| <div class="disk-hub-wrapper"><div class="disk-hub-real" id="hub2b"><div class="hub-notch"></div></div></div> | |
| <div class="disk-label-amsoft"> | |
| <div class="label-header"><div class="side-indicator-container">4 <div class="arrow-cajetin">↓</div></div><span class="amsoft-logo-text">Amsoft</span><span class="amstrad-subtext-black">AMSTRAD CONSUMER<br>ELECTRONICS plc</span></div> | |
| <div class="label-body-replica"> | |
| <span class="txt-small">GRÁFICOS Y LENGUAJES.</span><span class="txt-large-bold">DR. LOGO</span><div class="serial-box">2433348</div> | |
| <div class="license-text">EL USO DE ESTOS PROGRAMAS ESTA SUJETO A LAS CONDICIONES DEL<br>ACUERDO DE LICENCIA DE USUARIO FINAL ESTABLECIDAS EN EL APENDICE...</div> | |
| </div> | |
| <div class="label-footer-grey"><div class="cs-logo-label">CS</div><span class="copy-text-replica">PROGRAMAS COPYRIGHT © 1985 AMSTRAD C.E. plc.<br>MALLARD BASIC / DR. LOGO</span></div> | |
| </div> | |
| </div> | |
| </div> | |
| <button class="flip-btn" onclick="toggleFlip('disk2')">⟲ GIRAR DISCO 2</button> | |
| </div> | |
| </div> | |
| </div> | </div> |
| |
| <script> | <script> |
| let currentModel = ""; let currentLang = ""; let currentLangText = ""; | var pcwActual = ''; |
| const fileMap = { "8256-es-1A": "loco_8256_es_1a.zip", "8256-es-1B": "cpm_8256_es_1b.zip", "8256-es-2A": "util_8256_es_2a.zip", "8256-es-2B": "logo_8256_es_2b.zip", "8512-es-1A": "loco_8512_es_1a.zip", "8512-es-1B": "cpm_8512_es_1b.zip", "8512-es-2A": "util_8512_es_2a.zip", "8512-es-2B": "logo_8512_es_2b.zip" }; | var rutaBanderas = "/lib/exe/fetch.php?media=botones:"; |
| | var rutaDiscos = "/lib/exe/fetch.php?media=sistema:discos:imagenes:"; |
| |
| function selectModel(model, btn) { document.querySelectorAll('.btn-model').forEach(b => b.classList.remove('active')); btn.classList.add('active'); currentModel = model; document.getElementById('lang-selector').style.display = 'block'; updateShelf(); } | function seleccionarPCW(modelo, boton) { |
| function selectLang(lang, btn, text) { document.querySelectorAll('.flag-btn').forEach(b => b.classList.remove('active')); btn.classList.add('active'); currentLang = lang; currentLangText = text; updateShelf(); } | pcwActual = modelo; |
| function updateShelf() { document.querySelectorAll('.disk-shelf').forEach(s => s.style.display = 'none'); const status = document.getElementById('status-msg'); if(currentModel && currentLang) { if(currentLang === 'es' && (currentModel === '8256' || currentModel === '8512')) { document.getElementById('shelf-es-3inch').style.display = 'flex'; status.innerHTML = `SISTEMA PCW ${currentModel} [${currentLangText}] LISTO.`; } else { status.innerHTML = `MODELO ${currentModel} [${currentLangText}] EN PREPARACIÓN...`; } } } | var botones = document.getElementsByClassName('btn-model'); |
| function toggleFlip(diskId) { document.getElementById(diskId).classList.toggle('is-flipped'); } | for (var i = 0; i < botones.length; i++) { botones[i].classList.remove('active'); } |
| function handleDiskClick(name, side, hubId) { | boton.classList.add('active'); |
| const sideKey = side.includes("DISCO 1") ? (side.includes("CARA A") ? "1A" : "1B") : (side.includes("CARA A") ? "2A" : "2B"); | document.getElementById('display-screen').innerHTML = '<div style="text-align:center; padding-top:100px; opacity:0.5;">SELECT LANGUAGE:</div>'; |
| const fileName = fileMap[`${currentModel}-${currentLang}-${sideKey}`] || "archivo.zip"; | |
| loadDisk(name, side, fileName, hubId); | var contenedor = document.getElementById('lang-container'); |
| | contenedor.innerHTML = ''; |
| | |
| | var listaIdiomas = (modelo === '8256' || modelo === '8512') ? |
| | [{id:'es', img:'españa.jpg'}, {id:'en', img:'reino_unido.jpg'}, {id:'de', img:'alemania.jpg'}, {id:'fr', img:'francia.jpg'}] : |
| | [{id:'en', img:'reino_unido.jpg'}]; |
| | |
| | listaIdiomas.forEach(function(lang) { |
| | var img = document.createElement('img'); |
| | img.src = rutaBanderas + lang.img; |
| | img.className = 'flag-btn'; |
| | img.onclick = function() { |
| | var flags = document.getElementsByClassName('flag-btn'); |
| | for (var j = 0; j < flags.length; j++) { flags[j].classList.remove('active'); } |
| | this.classList.add('active'); |
| | mostrarDiscos(lang.id); |
| | }; |
| | contenedor.appendChild(img); |
| | }); |
| } | } |
| function loadDisk(name, side, file, hubId) { | |
| const status = document.getElementById('status-msg'); const led = document.getElementById('drive-led'); const zone = document.getElementById('download-zone'); const buttons = document.getElementById('buttons-container'); const hub = document.getElementById(hubId); | function mostrarDiscos(idLang) { |
| zone.style.display = 'none'; led.classList.add('led-active'); if(hub) hub.classList.add('spinning'); status.style.color = "#ffff00"; | var pantalla = document.getElementById('display-screen'); |
| let track = 0; const readSequence = setInterval(() => { status.innerHTML = `LEYENDO ${side} - PISTA ${track}... CARGANDO ${name}`; track++; if (track > 42) { clearInterval(readSequence); led.classList.remove('led-active'); if(hub) hub.classList.remove('spinning'); status.innerHTML = `SISTEMA MONTADO: <span style='color:#fff'>${side} ${currentLangText}</span>`; buttons.innerHTML = `<a href="/lib/exe/fetch.php?media=sistema:descargas:${file}" class="btn-model">DESCARGAR (.ZIP)</a>`; zone.style.display = 'block'; } }, 35); | var htmlDiscos = ''; |
| | |
| | if (pcwActual === '8256' || pcwActual === '8512') { |
| | htmlDiscos = '<div class="disk-grid">' + |
| | '<div class="disk-item"><img src="' + rutaDiscos + 'systemdisk_' + idLang + '_side1.jpg" onclick="abrirZoom(this.src)">DISK 1</div>' + |
| | '<div class="disk-item"><img src="' + rutaDiscos + 'systemdisk_' + idLang + '_side2.jpg" onclick="abrirZoom(this.src)">DISK 2</div>' + |
| | '<div class="disk-item"><img src="' + rutaDiscos + 'systemdisk_' + idLang + '_side3.jpg" onclick="abrirZoom(this.src)">DISK 3</div>' + |
| | '<div class="disk-item"><img src="' + rutaDiscos + 'systemdisk_' + idLang + '_side4.jpg" onclick="abrirZoom(this.src)">DISK 4</div>' + |
| | '</div>'; |
| | } else if (pcwActual === '9512plus') { |
| | htmlDiscos = '<div class="disk-grid">' + |
| | '<div class="disk-item"><img src="' + rutaDiscos + 'locoscript2_9512plus_bubblejet_disk_front.jpg" onclick="abrirZoom(this.src)">LOCO FRONT</div>' + |
| | '<div class="disk-item"><img src="' + rutaDiscos + 'locoscript2_9512plus_bubblejet_disk_back.jpg" onclick="abrirZoom(this.src)">LOCO BACK</div>' + |
| | '<div class="disk-item"><img src="' + rutaDiscos + 'cpm_plus_9512plus_bubblejet_disk_front.jpg" onclick="abrirZoom(this.src)">CPM FRONT</div>' + |
| | '<div class="disk-item"><img src="' + rutaDiscos + 'cpm_plus_9512plus_bubblejet_disk_back.jpg" onclick="abrirZoom(this.src)">CPM BACK</div>' + |
| | '</div>'; |
| | } else if (pcwActual === '9512' || pcwActual === '10' || pcwActual === '16' || pcwActual === '9256') { |
| | var discosData = { |
| | '9512': ['systemdisk_9512_en_disc1.jpg', 'systemdisk_9512_en_disc2.jpg'], |
| | '10': ['systemdisk_10_en_disc2.jpg', 'systemdisk_10_en_disc1.jpg'], |
| | '16': ['systemdisk_16_en_rescue.jpg'], |
| | '9256': ['systemdisk_9256_en_disc1.jpg', 'systemdisk_9256_en_disc2.jpg'] |
| | }; |
| | var lista = discosData[pcwActual] || []; |
| | htmlDiscos = '<div class="disk-grid">'; |
| | lista.forEach(function(img, index){ |
| | htmlDiscos += '<div class="disk-item"><img src="' + rutaDiscos + img + '" onclick="abrirZoom(this.src)">DISK ' + (index+1) + '</div>'; |
| | }); |
| | htmlDiscos += '</div>'; |
| | } |
| | |
| | if (htmlDiscos !== '') { |
| | // ENGLISH FINAL ROUTE: Forcing the en: namespace |
| | var urlFinal = "doku.php?id=en:sistema:discos:descargas:pcw" + pcwActual + idLang; |
| | |
| | htmlDiscos += '<div class="download-zone">' + |
| | '<a href="' + urlFinal + '" target="_blank" class="btn-download">DOWNLOAD SYSTEM DISKS PCW ' + pcwActual.toUpperCase() + ' (' + idLang.toUpperCase() + ')</a>' + |
| | '</div>'; |
| | pantalla.innerHTML = htmlDiscos; |
| | } else { |
| | pantalla.innerHTML = '<div style="text-align:center; padding-top:100px; opacity:0.5;">CONTENT NOT AVAILABLE_</div>'; |
| | } |
| } | } |
| | |
| | function abrirZoom(src) { |
| | document.getElementById('modal-img').src = src; |
| | document.getElementById('disk-modal').style.display = 'flex'; |
| | } |
| | |
| | function cerrarZoom() { |
| | document.getElementById('disk-modal').style.display = 'none'; |
| | } |
| | |
| | document.onkeydown = function(evt) { |
| | if (evt.key === "Escape") cerrarZoom(); |
| | }; |
| </script> | </script> |
| </html> | </html> |
| |