|
|
|
Virtual ComputerVon $1InhaltsverzeichnisKombinierter RevisionsvergleichAndere Änderungen:
Version von 06:56, 13 Jul 2026
Wir sammeln „Computer“, Teile davon – physisch und virtuell. Alles fing mit einer Idee 2014 an, als Minocula über eine Zeichnung kombiniert mit verschiedenen Frames innerhalb eines GIFs versuchte, seine Leidenschaft fürs „alte“ und „neue“ zu transformieren und festzuhalten. Museum2{} Dank claude.ai sieht das ganze nun 2025 etwas anders aus. Museum1{} Du kannst die Playgroundseite zum 5 Jahre Jubiläum direkt erreichen. Besucherlogs können hier eingesehen werden. Die Seite schaltet sich erst frei, wenn kürzlich bereits eine Anmeldung am Museum stattgefunden hatte. {{ template('firncore/Elements/Disclaimer'); }} Liste aller virtuellen Computer im MuseumFilter nach Name, Jahr, Hersteller, Betriebssystem, Typ — z.B. IBM, 1986 oder Compaq Filter: function myFunctionV() {
var input, filter, table, tr, td, i;
input = document.getElementById("myInputV");
filter = input.value.toUpperCase();
table = document.getElementById("myTable");
tr = table.getElementsByTagName("tr");
for (i = 0; i < tr.length; i++) {
td = tr[i].getElementsByTagName("td")[0];
td1 = tr[i].getElementsByTagName("td")[2];
td2 = tr[i].getElementsByTagName("td")[3];
td3 = tr[i].getElementsByTagName("td")[4];
td4 = tr[i].getElementsByTagName("td")[5];
if (td) {
if ( (td.innerHTML.toUpperCase().indexOf(filter) > -1) || (td1.innerHTML.toUpperCase().indexOf(filter) > -1) || (td2.innerHTML.toUpperCase().indexOf(filter) > -1) || (td3.innerHTML.toUpperCase().indexOf(filter) > -1) || (td4.innerHTML.toUpperCase().indexOf(filter) > -1) ) {
tr[i].style.display = "";
} else {
tr[i].style.display = "none";
}
}
}
}
var vcSortCol = -1;
var vcSortAsc = true;
function vcSortTable(colIdx) {
var table, tbody, rows, switching, i, x, y, shouldSwitch;
table = document.getElementById("myTable");
tbody = table.getElementsByTagName("tbody")[0];
var ths = table.getElementsByTagName("th");
if (vcSortCol === colIdx) {
vcSortAsc = !vcSortAsc;
} else {
vcSortCol = colIdx;
vcSortAsc = true;
}
for (i = 0; i < ths.length; i++) {
ths[i].className = ths[i].className.replace(' vc-sort-asc','').replace(' vc-sort-desc','');
}
ths[colIdx].className = ths[colIdx].className + (vcSortAsc ? ' vc-sort-asc' : ' vc-sort-desc');
switching = true;
while (switching) {
switching = false;
rows = tbody.getElementsByTagName("tr");
for (i = 0; i < (rows.length - 1); i++) {
shouldSwitch = false;
x = rows[i].getElementsByTagName("td")[colIdx];
y = rows[i+1].getElementsByTagName("td")[colIdx];
if (!x || !y) { continue; }
var xVal = (x.innerText || x.textContent || '').replace(/\s+/g,' ').trim().toUpperCase();
var yVal = (y.innerText || y.textContent || '').replace(/\s+/g,' ').trim().toUpperCase();
var xNum = parseFloat(xVal);
var yNum = parseFloat(yVal);
var numeric = !isNaN(xNum) && !isNaN(yNum);
var cmp = numeric ? (xNum - yNum) : xVal.localeCompare(yVal);
if (vcSortAsc ? (cmp > 0) : (cmp < 0)) {
shouldSwitch = true;
break;
}
}
if (shouldSwitch) {
rows[i].parentNode.insertBefore(rows[i+1], rows[i]);
switching = true;
}
}
}
Um mit Apache Guacamole (Remotedesktop-Gateway) simultan auf alle VMs zu hüpfen, diesen Link nutzen.
NoElements {}
Aktuelle VersionWir sammeln „Computer“, Teile davon – physisch und virtuell. Alles fing mit einer Idee 2014 an, als Minocula über eine Zeichnung kombiniert mit verschiedenen Frames innerhalb eines GIFs versuchte, seine Leidenschaft fürs „alte“ und „neue“ zu transformieren und festzuhalten. Museum2{} Dank claude.ai sieht das ganze nun 2025 etwas anders aus. Museum1{} Du kannst die Playgroundseite zum 5 Jahre Jubiläum direkt erreichen. Besucherlogs können hier eingesehen werden. Die Seite schaltet sich erst frei, wenn kürzlich bereits eine Anmeldung am Museum stattgefunden hatte. {{ template('firncore/Elements/Disclaimer'); }} Liste aller virtuellen Computer im MuseumFilter nach Name, Jahr, Hersteller, Betriebssystem, Typ — z.B. IBM, 1986 oder Compaq Filter: function myFunctionV() {
var input, filter, table, tr, td, i;
input = document.getElementById("myInputV");
filter = input.value.toUpperCase();
table = document.getElementById("myTable");
tr = table.getElementsByTagName("tr");
for (i = 0; i < tr.length; i++) {
td = tr[i].getElementsByTagName("td")[0];
td1 = tr[i].getElementsByTagName("td")[2];
td2 = tr[i].getElementsByTagName("td")[3];
td3 = tr[i].getElementsByTagName("td")[4];
td4 = tr[i].getElementsByTagName("td")[5];
if (td) {
if ( (td.innerHTML.toUpperCase().indexOf(filter) > -1) || (td1.innerHTML.toUpperCase().indexOf(filter) > -1) || (td2.innerHTML.toUpperCase().indexOf(filter) > -1) || (td3.innerHTML.toUpperCase().indexOf(filter) > -1) || (td4.innerHTML.toUpperCase().indexOf(filter) > -1) ) {
tr[i].style.display = "";
} else {
tr[i].style.display = "none";
}
}
}
}
var vcSortCol = -1;
var vcSortAsc = true;
function vcSortTable(colIdx) {
var table, tbody, rows, switching, i, x, y, shouldSwitch;
table = document.getElementById("myTable");
tbody = table.getElementsByTagName("tbody")[0];
var ths = table.getElementsByTagName("th");
if (vcSortCol === colIdx) {
vcSortAsc = !vcSortAsc;
} else {
vcSortCol = colIdx;
vcSortAsc = true;
}
for (i = 0; i < ths.length; i++) {
ths[i].className = ths[i].className.replace(' vc-sort-asc','').replace(' vc-sort-desc','');
}
ths[colIdx].className = ths[colIdx].className + (vcSortAsc ? ' vc-sort-asc' : ' vc-sort-desc');
switching = true;
while (switching) {
switching = false;
rows = tbody.getElementsByTagName("tr");
for (i = 0; i < (rows.length - 1); i++) {
shouldSwitch = false;
x = rows[i].getElementsByTagName("td")[colIdx];
y = rows[i+1].getElementsByTagName("td")[colIdx];
if (!x || !y) { continue; }
var xVal = (x.innerText || x.textContent || '').replace(/\s+/g,' ').trim().toUpperCase();
var yVal = (y.innerText || y.textContent || '').replace(/\s+/g,' ').trim().toUpperCase();
var xNum = parseFloat(xVal);
var yNum = parseFloat(yVal);
var numeric = !isNaN(xNum) && !isNaN(yNum);
var cmp = numeric ? (xNum - yNum) : xVal.localeCompare(yVal);
if (vcSortAsc ? (cmp > 0) : (cmp < 0)) {
shouldSwitch = true;
break;
}
}
if (shouldSwitch) {
rows[i].parentNode.insertBefore(rows[i+1], rows[i]);
switching = true;
}
}
}
Um mit Apache Guacamole (Remotedesktop-Gateway) simultan auf alle VMs zu hüpfen, diesen Link nutzen.
NoElements {}
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||