Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b34262e11f | ||
|
|
17c01086b7 | ||
|
|
5e870d1466 | ||
|
|
8d00f6d1fc | ||
|
|
51f8e0264d | ||
|
|
0fa880683a | ||
|
|
bda845dd8e | ||
|
|
6f3d6a1661 | ||
|
|
5f4b008545 | ||
|
|
5c1c6ed697 | ||
|
|
96a8a15e2b | ||
|
|
05cafca9fc | ||
|
|
a71ca2f536 | ||
|
|
acd50bfdd8 | ||
|
|
b0943dd878 | ||
|
|
b817c54332 | ||
|
|
7d57de34d0 | ||
|
|
f76521c02d | ||
|
|
46b9c1b64d | ||
|
|
da87f09bbc | ||
|
|
de32ab0ace | ||
|
|
9f5462f365 | ||
|
|
6c58e13ab1 | ||
|
|
3bb90af124 | ||
|
|
265dfa7541 | ||
|
|
09d78a5f7c | ||
|
|
2905625748 | ||
|
|
f344c7e26e | ||
|
|
4b06544128 | ||
|
|
267aaa7986 | ||
|
|
51a6a349aa | ||
|
|
2f0b31ba7d | ||
|
|
2e349c2023 | ||
|
|
e4ceebf7d7 | ||
|
|
9aff826b34 | ||
|
|
a956086ee4 | ||
|
|
9c71487ad4 | ||
|
|
9880766dbf | ||
|
|
bafaff68bb | ||
|
|
747f90eea9 | ||
|
|
78190c02c0 | ||
|
|
2b1ceb8215 | ||
|
|
e23f5884c0 | ||
|
|
8227847ad4 | ||
|
|
880c4f6f58 | ||
|
|
bb9b9a92ad | ||
|
|
d577bcb74b | ||
|
|
7b4c127b4d | ||
|
|
9381720df3 | ||
|
|
c49380350f | ||
|
|
5bd222ee45 | ||
|
|
2784a78308 | ||
|
|
0148581e25 | ||
|
|
e9267b10d6 | ||
|
|
9f5b5680bd | ||
|
|
331bcb6b1f | ||
|
|
febf94a1b8 | ||
|
|
70da09cd85 | ||
|
|
b8558f3c20 | ||
|
|
72bcc20b0c | ||
|
|
f29d843b5f | ||
|
|
83dd09cc19 | ||
|
|
3c3c521fab | ||
|
|
7bec25d1e9 | ||
|
|
d9ee54d1d0 | ||
|
|
a3fe5d8048 | ||
|
|
f956c8ec32 | ||
|
|
110173e357 | ||
|
|
33793c9340 | ||
|
|
36e64f1899 | ||
|
|
b88e06a7f6 | ||
|
|
90cdf6d0e4 | ||
|
|
720e47e75e | ||
|
|
9988c5e47b | ||
|
|
dbb4d90306 | ||
|
|
0112b5a7b3 | ||
|
|
1e893e4d69 | ||
|
|
14d210032d | ||
|
|
fe315560d9 | ||
|
|
4c6c10b26e | ||
|
|
b072496639 | ||
|
|
84c7c8a5a5 | ||
|
|
67ae177de3 | ||
|
|
76239f73fe | ||
|
|
fc133539d3 | ||
|
|
8966feacfa | ||
|
|
7deefb7ac4 | ||
|
|
f2c511fb72 | ||
|
|
62b160d3d6 | ||
|
|
d87f8b744a | ||
|
|
59b1cb24d3 | ||
|
|
ea939dd623 | ||
|
|
ab01a88988 | ||
|
|
b32220f7ac | ||
|
|
3ec2eb3947 | ||
|
|
623f16f256 | ||
|
|
8b359a6cba | ||
|
|
bc55552b98 | ||
|
|
b6c3e21217 | ||
|
|
4c5fd92a50 | ||
|
|
5a40a170fd | ||
|
|
16b3a6c67c | ||
|
|
8ef84c2218 | ||
|
|
43d9292f8e | ||
|
|
60626afb5d | ||
|
|
33fd24474e | ||
|
|
57d26a929d | ||
|
|
20cb6cc882 | ||
|
|
2213bca46a | ||
|
|
659cf61d5c | ||
|
|
d05c83f077 | ||
|
|
56da5fe4cb | ||
|
|
0838f9f8f2 | ||
|
|
03245e4ff7 | ||
|
|
d65d0f582d | ||
|
|
a715ad3377 | ||
|
|
8c62c7e991 | ||
|
|
df72630b14 | ||
|
|
7c3475a206 | ||
|
|
26e955a63d | ||
|
|
e2696383e7 |
@@ -161,6 +161,10 @@ CSS-Dateien werden als Passthrough kopiert (kein Hash im Dateinamen). Bei CSS-Ae
|
||||
|
||||
Bei jeder CSS-Anpassung `?v=N` um 1 erhoehen, sonst cached der Browser die alte Datei.
|
||||
|
||||
### skoelle GitHub-Repo im Auge behalten
|
||||
|
||||
Bei Aenderungen an stefankoelle.de (Inhalte, Technologien, URLs) pruefen, ob die Datei `../skoelle/README.md` ebenfalls aktualisiert werden muss. Das README ist die Kurzform des Lebenslaufs und soll mit stefankoelle.de synchron bleiben.
|
||||
|
||||
## CI/CD
|
||||
|
||||
### IONOS SFTP (www.moonweb.org)
|
||||
|
||||
@@ -1,4 +1,21 @@
|
||||
[
|
||||
{
|
||||
"title": "Chat Archive",
|
||||
"emoji": "💬",
|
||||
"category": "code",
|
||||
"subcategory": "Dev Tools",
|
||||
"status": "active",
|
||||
"stack": [
|
||||
"Python",
|
||||
"FastAPI",
|
||||
"SQLAlchemy",
|
||||
"Tauri",
|
||||
"Rust"
|
||||
],
|
||||
"repo": "chat-archive",
|
||||
"repo_url": "https://github.com/skoelle/chat-archive",
|
||||
"summary": "Import Instagram & Facebook (incl. E2EE) chat takeouts into a searchable MySQL database with a REST API for analysis"
|
||||
},
|
||||
{
|
||||
"title": "PeopleCostCounter",
|
||||
"emoji": "💰",
|
||||
@@ -14,6 +31,22 @@
|
||||
"repo_url": "https://github.com/skoelle/PeopleCostCounter",
|
||||
"summary": "A vanilla JS single-page tool that shows in real time how much a meeting is costing, based on team size and average salary, with English and German UIs."
|
||||
},
|
||||
{
|
||||
"title": "Smeagol WYSIWYG",
|
||||
"emoji": "🧙",
|
||||
"category": "code",
|
||||
"subcategory": "Dev Tools",
|
||||
"description": "Personal wiki with WYSIWYG editor for Markdown files",
|
||||
"status": "active",
|
||||
"stack": [
|
||||
"Go",
|
||||
"Milkdown",
|
||||
"Markdown"
|
||||
],
|
||||
"repo": "smeagol-wysiwyg",
|
||||
"repo_url": "https://github.com/skoelle/smeagol-wysiwyg",
|
||||
"summary": "A personal wiki with a real WYSIWYG editor. Single Go binary, Markdown files on disk, instant save, live reload, full-text search."
|
||||
},
|
||||
{
|
||||
"title": "kctl-tui",
|
||||
"emoji": "🐳",
|
||||
@@ -259,7 +292,7 @@
|
||||
],
|
||||
"repo": "moonweb-site",
|
||||
"repo_url": "https://github.com/skoelle/moonweb-site",
|
||||
"summary": "Monorepo for moonweb.org - my personal homelab hub. Six static sites (Eleventy) covering infrastructure, smart home, code, and retro hardware. Deployed to Cloudflare Pages or IONOS."
|
||||
"summary": "Monorepo for moonweb.org - my personal homelab hub. Six static sites (Eleventy) covering infrastructure, smart home, code, and retro hardware. Deployed to IONOS."
|
||||
},
|
||||
{
|
||||
"title": "www.moonweb.org",
|
||||
|
||||
@@ -34,8 +34,29 @@ module.exports = function (eleventyConfig) {
|
||||
// Retro: ET4000 page images
|
||||
eleventyConfig.addPassthroughCopy("retro/et4000-experiment/*.jpg");
|
||||
|
||||
// Retro: STPSU page images + manual PDF
|
||||
eleventyConfig.addPassthroughCopy("retro/stpsu/*.pdf");
|
||||
|
||||
// Retro: page-specific photo galleries (MonSTerBoard, Gotek, Eiffel, STPSU)
|
||||
eleventyConfig.addPassthroughCopy("retro/monsterboard/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/gotek/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/eiffel/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/stpsu/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/acsi2stm/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/atari-vga/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/laser-mouse/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/mega-st-high/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/dos-486-tower/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/mistery-core/*.jpg");
|
||||
eleventyConfig.addPassthroughCopy("retro/mini-arcade-handheld-roundup/*.jpg");
|
||||
|
||||
// Standalone demo group archives (static HTML)
|
||||
eleventyConfig.addPassthroughCopy("phobia/**");
|
||||
eleventyConfig.addPassthroughCopy("tcm/**");
|
||||
|
||||
// Root-level shared assets
|
||||
eleventyConfig.addPassthroughCopy({ "shared/base.css": "shared-base.css" });
|
||||
eleventyConfig.addPassthroughCopy({ "shared/fonts/lobster-latin.woff2": "fonts/lobster-latin.woff2" });
|
||||
eleventyConfig.addPassthroughCopy({ "shared/favicon/hub.svg": "favicon.svg" });
|
||||
eleventyConfig.addPassthroughCopy({ "hub/robots.txt": "robots.txt" });
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
title: "Stefan Kölle, Homelab, Smart Home, Code & Retro Hardware | moonweb"
|
||||
title: "Stefan Koelle, Homelab, Smart Home, Code & Retro Hardware | moonweb"
|
||||
section: "hub"
|
||||
tags: "hub"
|
||||
permalink: /index.html
|
||||
description: "Stefan Kölle, Senior Software Developer & Architect in Munich. Homelab projects, smart home automation, open-source code, and retro hardware."
|
||||
description: "Stefan Koelle, Senior Software Developer & Architect in Munich. Homelab projects, smart home automation, open-source code, and retro hardware."
|
||||
layout: base.njk
|
||||
ogImage: "/stefan-koelle-foto.jpg"
|
||||
sections:
|
||||
@@ -57,7 +57,7 @@ sections:
|
||||
<p>I'm a Senior Software Developer & Architect based in Munich with 20+ years in the trenches, from Turbo Pascal on a real 486 back in the day to .NET, Kubernetes, and AI-driven development today. By day I build microservices and cloud architecture, by night I dive into smart home automation, restore retro computers, and automate things that don't necessarily need automating.</p>
|
||||
<p>Everything here runs on a homelab that has been evolving since the mid-90s, from multiple 486s and Pentiums back then to today's Proxmox cluster. Have a look around.</p>
|
||||
</div>
|
||||
<img class="intro-photo" src="/stefan-koelle-foto.jpg" alt="Stefan Kölle" width="280" height="280">
|
||||
<img class="intro-photo" src="/stefan-koelle-foto.jpg" alt="Stefan Koelle" width="280" height="280">
|
||||
</div>
|
||||
|
||||
{% include "card-grid.njk" %}
|
||||
|
||||
@@ -5,7 +5,7 @@ tags: "infra"
|
||||
description: "Homelab infrastructure overview: Proxmox hosts, Synology NAS, Docker VMs and Setup-Guides."
|
||||
layout: base.njk
|
||||
sections:
|
||||
- heading: "Plattform"
|
||||
- heading: "Platform"
|
||||
cards:
|
||||
- title: "🖥️ Proxmox host (PVE)"
|
||||
summary: "Hosting environment for running production VMs and LXC containers for the homelab."
|
||||
@@ -16,8 +16,8 @@ sections:
|
||||
- title: "🐳 Docker VMs (Debian)"
|
||||
summary: "Primary target for new Docker/Compose services, running the monitoring exporters."
|
||||
href: "/infra/docker/"
|
||||
- title: "📦 LxC Container"
|
||||
summary: "Pi-hole, Ubuntu-Worker and MariaDB running on slim LxC Containers."
|
||||
- title: "📦 LXC Container"
|
||||
summary: "Pi-hole, Ubuntu-Worker and MariaDB running on slim LXC Containers."
|
||||
href: "/infra/lxc/"
|
||||
- heading: "Strategies & Setup-Guides"
|
||||
cards:
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
"dev:timecapsule": "cd timecapsule && npx @11ty/eleventy --serve --port=8087",
|
||||
"build": "npx @11ty/eleventy",
|
||||
"build:stefankoelle": "mv .eleventyignore .eleventyignore.bak && npx @11ty/eleventy --config=stefankoelle/eleventy.config.js; mv .eleventyignore.bak .eleventyignore 2>/dev/null; true",
|
||||
"build:timecapsule": "cd timecapsule && npx @11ty/eleventy && mkdir -p ../dist/moonweb/timecapsule && cp -r _site/timecapsule/* ../dist/moonweb/timecapsule/",
|
||||
"build:timecapsule": "cd timecapsule && rm -r _site 2>/dev/null; npx @11ty/eleventy && rm -r ../dist/moonweb/timecapsule 2>/dev/null; mkdir -p ../dist/moonweb/timecapsule && cp -r _site/timecapsule/* ../dist/moonweb/timecapsule/",
|
||||
"build:moonweb": "npm run build && npm run build:timecapsule",
|
||||
"pdf:cv": "bash stefankoelle/pdf/build-pdf.sh",
|
||||
"prebuild:cv": "bash prebuild.sh"
|
||||
|
||||
@@ -0,0 +1,447 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>PHOBIA DemoGroup Archive - Nostalgic PC Intros from 1994</title>
|
||||
<meta name="description" content="Explore the PHOBIA DemoGroup Archive, showcasing the 1994 PC intros, including the notable Phobia Welcome Intro. Relive the early days of PC intros with source code and more.">
|
||||
<link rel="canonical" href="https://www.moonweb.org/phobia/" />
|
||||
<style>
|
||||
@font-face {
|
||||
font-family: 'VT323';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: url('fonts/vt323-latin.woff2') format('woff2');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Press Start 2P';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: url('fonts/pressstart2p-latin.woff2') format('woff2');
|
||||
}
|
||||
body {
|
||||
background-color: #1a1a1a;
|
||||
margin: 0;
|
||||
color: #f0f0f0;
|
||||
font-family: 'VT323', monospace;
|
||||
line-height: 1.6;
|
||||
font-size: 20px;
|
||||
overflow-x: hidden;
|
||||
text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
|
||||
}
|
||||
.header {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background-color: #000071;
|
||||
padding: 10px 0;
|
||||
}
|
||||
.header img, .header canvas {
|
||||
height: 120px;
|
||||
margin-right: 0;
|
||||
}
|
||||
.header a {
|
||||
margin: 0 15px;
|
||||
color: #518DAF;
|
||||
text-decoration: none;
|
||||
font-size: 1.2em;
|
||||
}
|
||||
.header a:hover {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
.content {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
padding: 20px 15px;
|
||||
max-width: 1000px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.program {
|
||||
display: flex;
|
||||
flex: 1 1 100%;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
.program-image {
|
||||
flex: 1 1 150px;
|
||||
margin-right: 20px;
|
||||
}
|
||||
.program-image img {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
border-radius: 10px;
|
||||
}
|
||||
.video-thumb {
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
}
|
||||
.play-button {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-left: 35px solid rgba(255,255,255,0.9);
|
||||
border-top: 20px solid transparent;
|
||||
border-bottom: 20px solid transparent;
|
||||
filter: drop-shadow(0 0 6px rgba(0,0,0,0.6));
|
||||
transition: opacity 0.2s;
|
||||
}
|
||||
.video-thumb:hover .play-button {
|
||||
opacity: 0.7;
|
||||
}
|
||||
.program-description {
|
||||
margin-top: 10px;
|
||||
font-size: 1.1em;
|
||||
line-height: 1.4;
|
||||
}
|
||||
.program-description p {
|
||||
margin: 0.3em 0;
|
||||
}
|
||||
.program-info {
|
||||
flex: 2 1 300px;
|
||||
}
|
||||
.program-info h2 {
|
||||
font-size: 1em;
|
||||
margin-top: 0;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.footer {
|
||||
font-size: 0.9em;
|
||||
text-align: center;
|
||||
padding: 20px;
|
||||
background-color: #333;
|
||||
margin-top: 20px;
|
||||
}
|
||||
h1, h2 {
|
||||
font-family: 'Press Start 2P', cursive;
|
||||
}
|
||||
@media (max-width: 600px) {
|
||||
h1 {
|
||||
font-size: 1.7em;
|
||||
}
|
||||
.program-info h2 {
|
||||
font-size: 1.2em;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.header img, .header canvas {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
.content {
|
||||
padding: 15px 10px;
|
||||
flex-direction: column;
|
||||
align-items: left;
|
||||
}
|
||||
.program {
|
||||
flex-direction: column;
|
||||
align-items: left;
|
||||
}
|
||||
.program-image {
|
||||
margin-right: 0;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
.program-info {
|
||||
text-align: left;
|
||||
}
|
||||
.content table {
|
||||
width: 100%;
|
||||
}
|
||||
.content table tr {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin-bottom: 0.8em;
|
||||
}
|
||||
.content table td {
|
||||
padding-right: 0;
|
||||
}
|
||||
.content table td:first-child {
|
||||
margin-bottom: 0.2em;
|
||||
}
|
||||
}
|
||||
th, td {
|
||||
text-align:left;
|
||||
vertical-align: top;
|
||||
padding-right: 20px;
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
a {
|
||||
color:#00A6FF;
|
||||
}
|
||||
|
||||
.lightbox {
|
||||
display: none;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: rgba(0, 0, 0, 0.8);
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.lightbox-content {
|
||||
position: relative;
|
||||
width: 80%;
|
||||
max-width: 800px;
|
||||
}
|
||||
.lightbox-content iframe {
|
||||
width: 100%;
|
||||
height: 450px;
|
||||
}
|
||||
.close {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
font-size: 30px;
|
||||
color: #fff;
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function openLightbox() {
|
||||
document.getElementById('lightbox').style.display = 'flex';
|
||||
document.getElementById('video').src = 'https://www.youtube.com/embed/Cj3RgjVs5dk?autoplay=1';
|
||||
}
|
||||
|
||||
function closeLightbox(event) {
|
||||
if (event.target.id === 'lightbox' || event.target.className === 'close') {
|
||||
document.getElementById('lightbox').style.display = 'none';
|
||||
document.getElementById('video').src = '';
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="header">
|
||||
<a href="index.html">
|
||||
<canvas id="phobialogo" style="margin-right:20px;image-rendering:pixelated;"></canvas>
|
||||
<img id="phobialogo-fallback" src="phobialogo.png" alt="PHOBIA" style="display:none;">
|
||||
</a>
|
||||
</div>
|
||||
<div class="content">
|
||||
|
||||
<div class="welcome">
|
||||
<h1>PHOBIA DemoGroup Archive</h1>
|
||||
|
||||
<p>This site showcases the releases from my DemoGroup, PHOBIA. Although PHOBIA existed only briefly in 1994, it made a notable impact with its focus on PC intros. The highlight of our work was the Phobia Welcome Intro.</p>
|
||||
<p>Feel free to explore and enjoy the nostalgia of the early days of PC intros.</p>
|
||||
<p style="margin-bottom: 1.5em;">Best regards, Stefan Koelle</p>
|
||||
</div>
|
||||
|
||||
<div class="program">
|
||||
<div class="program-image">
|
||||
<div class="video-thumb" onclick="openLightbox()">
|
||||
<img src="welcomeintro.png" alt="Program 1 Image">
|
||||
<div class="play-button"></div>
|
||||
</div>
|
||||
<div class="program-description">
|
||||
<p><b>Phobia Welcome Intro</b></p>
|
||||
<p><a href="#" onclick="openLightbox()">YouTube Video of the Intro</a></p>
|
||||
<p><a href="https://github.com/skoelle/dos-phobia-welcome-intro" target="_blank">GitHub Source Code</a></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="program-info">
|
||||
<h2>Phobia Welcome Intro</h2>
|
||||
<p>The Phobia Welcome Intro was programmed in 1994 using Turbo Pascal, with inline assembler for the graphics routines. This intro was inspired by an Amiga demo, though the specific name has been forgotten. All graphics and programming were done by Stefan Koelle on a 486 DX2-66 DOS PC.</p>
|
||||
<p>This intro utilized an early version of the X-LIB unit, specifically the TextGraf.pas, which was also developed by Stefan Koelle. The source code for the intro is available on GitHub. The primary technique used to create the illusion of movement was color palette changes, rather than altering the pixels on the screen.</p>
|
||||
<p>The music for the intro was borrowed from an old Amiga demo and played using a public Mod-Player. The font used in the intro was custom and compiled into the executable as an object, along with the music and graphics.</p>
|
||||
|
||||
<h2>Facts</h2>
|
||||
<table>
|
||||
<tr>
|
||||
<td><b>Language</b></td>
|
||||
<td>Turbo Pascal with inline assembler</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Year</b></td>
|
||||
<td>1994</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Developer</b></td>
|
||||
<td>Stefan Koelle</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Development Machine</b></td>
|
||||
<td>486 DX2-66 DOS PC</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Graphics Technique</b></td>
|
||||
<td>Color palette changes</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Music Source</b></td>
|
||||
<td>Old Amiga demo</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Music Player</b></td>
|
||||
<td>Public Mod-Player</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Custom Font</b></td>
|
||||
<td>Compiled into the executable as an object</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Graphics Library</b></td>
|
||||
<td>Early version of X-LIB unit (TextGraf.pas)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Source Code</b></td>
|
||||
<td>Available on GitHub<br><a href="https://github.com/skoelle/dos-phobia-welcome-intro" target="_blank">https://github.com/skoelle/dos-phobia-welcome-intro</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<!--
|
||||
<div class="program">
|
||||
<div class="program-image">
|
||||
<img src="program2.jpg" alt="Program 2 Image">
|
||||
<div class="program-description">
|
||||
<p><b>Program 2</b></p>
|
||||
<p>Kurze Beschreibung des zweiten Programms.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="program-info">
|
||||
<h2>Program 2 Information</h2>
|
||||
<p>Hier steht der Infotext zum zweiten Programm. Dieser Text enthält detaillierte Informationen über das Programm, seine Funktionen und andere relevante Details.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="program">
|
||||
<div class="program-image">
|
||||
<img src="program3.jpg" alt="Program 3 Image">
|
||||
<div class="program-description">
|
||||
<p><b>Program 3</b></p>
|
||||
<p>Kurze Beschreibung des dritten Programms.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="program-info">
|
||||
<h2>Program 3 Information</h2>
|
||||
<p>Hier steht der Infotext zum dritten Programm. Dieser Text enthält detaillierte Informationen über das Programm, seine Funktionen und andere relevante Details.</p>
|
||||
</div>
|
||||
</div>-->
|
||||
</div>
|
||||
<canvas id="copperbars" style="position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;"></canvas>
|
||||
<div class="footer">
|
||||
PHOBIA website - initially created November 1999 - code from 1994 - Stefan Koelle<br>
|
||||
Part of <a href="/">moonweb.org</a> · <a href="/retro/">Retro Corner</a> · <a href="/impressum/">Legal Notice</a>
|
||||
</div>
|
||||
<div id="lightbox" class="lightbox" onclick="closeLightbox(event)">
|
||||
<div class="lightbox-content">
|
||||
<span class="close" onclick="closeLightbox()">×</span>
|
||||
<iframe id="video" src="" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
(function() {
|
||||
var canvas = document.getElementById('phobialogo');
|
||||
var fallback = document.getElementById('phobialogo-fallback');
|
||||
var ctx = canvas.getContext('2d');
|
||||
var img = new Image();
|
||||
img.crossOrigin = 'anonymous';
|
||||
img.onload = function() {
|
||||
canvas.width = img.width;
|
||||
canvas.height = img.height;
|
||||
fallback.style.display = 'none';
|
||||
canvas.style.display = 'inline';
|
||||
var origData = null;
|
||||
try {
|
||||
ctx.drawImage(img, 0, 0);
|
||||
origData = ctx.getImageData(0, 0, canvas.width, canvas.height);
|
||||
} catch(e) {
|
||||
fallback.style.display = 'inline';
|
||||
canvas.style.display = 'none';
|
||||
return;
|
||||
}
|
||||
var pixels = origData.data;
|
||||
var blueMap = {};
|
||||
for (var i = 0; i < pixels.length; i += 4) {
|
||||
var r = pixels[i], g = pixels[i+1], b = pixels[i+2];
|
||||
if (b > 30 && b > r * 1.3 && b > g * 1.2) {
|
||||
var key = r + ',' + g + ',' + b;
|
||||
if (!blueMap[key]) blueMap[key] = { r: r, g: g, b: b, count: 0 };
|
||||
blueMap[key].count++;
|
||||
}
|
||||
}
|
||||
var palette = [];
|
||||
for (var k in blueMap) {
|
||||
if (blueMap[k].count >= 500) palette.push(blueMap[k]);
|
||||
}
|
||||
palette.sort(function(a, b) {
|
||||
var la = a.r * 0.299 + a.g * 0.587 + a.b * 0.114;
|
||||
var lb = b.r * 0.299 + b.g * 0.587 + b.b * 0.114;
|
||||
return la - lb;
|
||||
});
|
||||
var origColors = palette.map(function(c) { return { r: c.r, g: c.g, b: c.b }; });
|
||||
var rotColors = origColors.slice();
|
||||
var offset = 0;
|
||||
function draw() {
|
||||
var out = ctx.createImageData(canvas.width, canvas.height);
|
||||
out.data.set(pixels);
|
||||
var d = out.data;
|
||||
for (var i = 0; i < palette.length; i++) {
|
||||
rotColors[i] = origColors[(i + offset) % palette.length];
|
||||
}
|
||||
var lookup = {};
|
||||
for (var i = 0; i < palette.length; i++) {
|
||||
var oc = origColors[i];
|
||||
var rc = rotColors[i];
|
||||
lookup[oc.r + ',' + oc.g + ',' + oc.b] = rc;
|
||||
}
|
||||
for (var i = 0; i < d.length; i += 4) {
|
||||
var key = d[i] + ',' + d[i+1] + ',' + d[i+2];
|
||||
if (lookup[key]) {
|
||||
d[i] = lookup[key].r;
|
||||
d[i+1] = lookup[key].g;
|
||||
d[i+2] = lookup[key].b;
|
||||
}
|
||||
}
|
||||
ctx.putImageData(out, 0, 0);
|
||||
offset = (offset + 1) % palette.length;
|
||||
setTimeout(function() { requestAnimationFrame(draw); }, 120);
|
||||
}
|
||||
draw();
|
||||
};
|
||||
img.onerror = function() {
|
||||
fallback.style.display = 'inline';
|
||||
canvas.style.display = 'none';
|
||||
};
|
||||
img.src = 'phobialogo.png';
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
(function() {
|
||||
var canvas = document.getElementById('copperbars');
|
||||
var ctx = canvas.getContext('2d');
|
||||
var w, h;
|
||||
function resize() { w = canvas.width = window.innerWidth; h = canvas.height = window.innerHeight; }
|
||||
resize();
|
||||
window.addEventListener('resize', resize);
|
||||
var bars = [
|
||||
{ baseY: 0.45, amplitude: 0.18, speed: 0.7, r: 255, g: 199, b: 0, barH: 50 },
|
||||
{ baseY: 0.55, amplitude: 0.15, speed: 1.1, r: 239, g: 0, b: 0, barH: 50 },
|
||||
{ baseY: 0.52, amplitude: 0.20, speed: 0.9, r: 4, g: 203, b: 0, barH: 50 },
|
||||
];
|
||||
function draw(t) {
|
||||
ctx.clearRect(0, 0, w, h);
|
||||
for (var i = 0; i < bars.length; i++) {
|
||||
var bar = bars[i];
|
||||
var y = h * bar.baseY + Math.sin(t * 0.001 * bar.speed) * h * bar.amplitude;
|
||||
var halfH = bar.barH / 2;
|
||||
for (var row = -halfH; row <= halfH; row++) {
|
||||
var rel = row / halfH;
|
||||
var alpha = 1 - rel * rel;
|
||||
var py = Math.round(y + row);
|
||||
if (py < 0 || py >= h) continue;
|
||||
ctx.fillStyle = 'rgba(' + bar.r + ',' + bar.g + ',' + bar.b + ',' + alpha.toFixed(3) + ')';
|
||||
ctx.fillRect(0, py, w, 1);
|
||||
}
|
||||
}
|
||||
requestAnimationFrame(draw);
|
||||
}
|
||||
requestAnimationFrame(draw);
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 382 KiB |
@@ -0,0 +1,39 @@
|
||||
---
|
||||
title: "ACSI2STM: Atari ST Hard Drive Emulator"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "An ACSI to SD card hard drive emulator for the Atari ST based on an STM32 microcontroller, bought but not yet in use."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>ACSI2STM: Atari ST Hard Drive Emulator</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>I bought an ACSI2STM adapter but haven't put it into a machine yet. It's a hard drive emulator for the Atari ST built around an inexpensive STM32 microcontroller and an SD card, an open-source project by retro16.</p>
|
||||
|
||||
<h2>What it does</h2>
|
||||
<p>ACSI2STM connects to the ACSI (DB19) port at the back of the Atari ST and emulates a hard drive. It can work in three ways:</p>
|
||||
<ul>
|
||||
<li><strong>Mount SD cards</strong>, standard SD/SDHC/SDXC cards (FAT16/FAT32/ExFAT) appear on the Atari.</li>
|
||||
<li><strong>Expose raw SD cards</strong> as ACSI hard disks connected to the Atari.</li>
|
||||
<li><strong>Expose disk image files</strong> as hard disks connected to the Atari.</li>
|
||||
</ul>
|
||||
<p>It also provides an UltraSatan-compatible real-time clock if you add a simple 3V lithium battery such as a CR2032.</p>
|
||||
|
||||
<h2>Hardware</h2>
|
||||
<p>The hardware is a custom PCB that can be ordered preassembled directly from JLCPCB. The board attaches straight to the DB19 port at the back of the ST and has three microSD card slots, with the firmware supporting up to five SD card readers. It's designed to be easy to build, extremely cheap, reliable and safe for the vintage machine. The project is mature and considered finished, with both software and hardware complete. It can even work on STs with broken DMA chips using the PIO firmware.</p>
|
||||
|
||||
<h2>My Setup</h2>
|
||||
<p>I bought an ACSI2STM adapter, but it isn't in use anywhere yet, so it sits among my other uninstalled extensions. The <a href="/retro/ultrasatan/">UltraSatan</a> currently provides the ACSI hard-disk storage on the "Low" machine, so the ACSI2STM would be an alternative or a spare for another machine.</p>
|
||||
<p>I also collected all the parts to build a second unit from scratch, following the open-source <a href="https://github.com/retro16/acsi2stm/blob/stable/doc/hardware.md" target="_blank">hardware guide</a>, but never got around to soldering it together. If it eventually gets built, it could go into the <a href="/retro/mega-st-heirloom/">"Heirloom"</a> or the <a href="/retro/mega-st2/">Mega ST 2</a>.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="acsi2stm.jpg" alt="The ACSI2STM adapter" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The ACSI2STM adapter, not yet installed.</p>
|
||||
<p>The PPERA-HD-GAMES pack (1 GB iTOS version + 7 GB full pack, January 2026) was bought from Peter Putnik for 30 EUR.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
<li><a href="https://github.com/retro16/acsi2stm" target="_blank">ACSI2STM - GitHub (project page)</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -11,21 +11,41 @@ parent: "/retro/"
|
||||
|
||||
<p>Somewhere along the way, "one Atari ST" turned into three Mega ST 4 machines plus a Mega ST 2. Rather than let them gather dust, each one got a clearly defined purpose, from untouched nostalgia piece to fully upgraded workstation.</p>
|
||||
|
||||
<h2>What Is an Atari Mega ST?</h2>
|
||||
<p>The Atari Mega ST is a variant of Atari's 16/32-bit ST computer line, released in 1987 and aimed at business and desktop-publishing users. Compared to the standard 520 ST or 1040 ST, it comes in a low, flat desktop case with the floppy drive and motherboard separated from the keyboard, similar to a classic PC tower-and-keyboard setup. It shipped with a built-in Blitter chip for fast graphics operations, which the earliest 520/1040 ST models lacked, making it noticeably better suited for GEM-based desktop publishing software of the era.</p>
|
||||
<p>Mega STs were sold as Mega 1 (1 MB RAM), Mega 2 (2 MB RAM) and Mega 4 (4 MB RAM), all expandable, and were commonly bundled with monochrome high-resolution monitors for DTP work with software like Calamus or PageStream. The separated case design makes internal expansion and modification considerably easier than on an all-in-one 1040 ST, which is one reason the Mega ST remains a popular base for retro computing projects like the ones documented on this site.</p>
|
||||
|
||||
<h2>The Lineup</h2>
|
||||
<ul>
|
||||
<li><strong>The heirloom machine</strong>, kept as close to factory-original as possible, running the stock TOS 1.04 and a classic floppy drive. Its job is to be a baseline reference: if something breaks on a modded machine, this one proves the fault isn't in the software.</li>
|
||||
<li><strong>The "Low" machine</strong>, a bargain-bin Mega ST 4 rebuilt with a <a href="/retro/storm-cloudy/">Cloudy/Storm ST combo</a> for TOS switching and extra FastRAM, a <a href="/retro/gotek/">Gotek floppy emulator</a>, an <a href="/retro/ultrasatan/">UltraSatan</a> hard disk emulator, a <a href="/retro/sidecartridge/">SidecarTridge multi-device</a> for ROM, floppy, and Wi-Fi tricks, and a <a href="/retro/atari-networking-bbs/">Wi-Fi modem</a> for dialing into BBSs. This is the demo- and game-machine, optimized for fast disk-image swapping rather than serious productivity.</li>
|
||||
<li><strong>The "High" machine</strong>, the workstation build. A <a href="/retro/monsterboard/">MonSTerBoard</a> adds 8MB of AltRAM, IDE storage, and flashable TOS (currently TOS 2.06), running Geneva for real multitasking. An <a href="/retro/et4000-experiment/">ET4000 graphics card</a> drives a dedicated monitor for higher resolutions. A <a href="/retro/netusb/">NetUSBee</a> adapter and an <a href="/retro/eiffel/">Eiffel interface</a> for a PS/2 keyboard and mouse round it out, with the original Atari keyboard and mouse now on the "Low" machine.</li>
|
||||
<li><strong>The spare Mega ST 2</strong>, a reserve and donor machine, kept in largely original condition, used to safely test upgrades before they go into the "real" machines.</li>
|
||||
<li><strong>The <a href="/retro/mega-st-heirloom/">heirloom machine</a></strong>, kept as close to factory-original as possible, running the stock TOS 1.04 with a classic floppy drive and its own original Atari keyboard and mouse. Its job is to be a baseline reference: if something breaks on a modded machine, this one proves the fault isn't in the software.</li>
|
||||
<li><strong>The <a href="/retro/mega-st-low/">"Low" machine</a></strong>, a bargain-bin Mega ST 4 rebuilt with a <a href="/retro/storm-cloudy/">Cloudy/Storm ST combo</a> for TOS switching and extra FastRAM, a <a href="/retro/gotek/">Gotek floppy emulator</a>, an <a href="/retro/ultrasatan/">UltraSatan</a> hard disk emulator, a <a href="/retro/sidecartridge/">SidecarTridge multi-device</a> for ROM, floppy, and Wi-Fi tricks, and a <a href="/retro/atari-networking-bbs/">Wi-Fi modem</a> for dialing into BBSs. It uses an original Atari keyboard and a <a href="/retro/mouster/">mouSTer</a> adapter with a USB mouse. This is the demo- and game-machine, optimized for fast disk-image swapping rather than serious productivity.</li>
|
||||
<li><strong>The <a href="/retro/mega-st-high/">"High" machine</a></strong>, the workstation build. A <a href="/retro/monsterboard/">MonSTerBoard</a> adds 8MB of AltRAM, IDE storage, and flashable TOS (currently TOS 2.06), running Geneva for real multitasking. An <a href="/retro/et4000-experiment/">ET4000 graphics card</a> drives a dedicated monitor for higher resolutions. A <a href="/retro/netusb/">NetUSBee</a> adapter, an <a href="/retro/eiffel/">Eiffel interface</a> for a PS/2 keyboard and mouse, and a new <a href="/retro/stpsu/">STPSU</a> for clean, stable power round it out.</li>
|
||||
<li><strong>The spare <a href="/retro/mega-st2/">Mega ST 2</a></strong>, a reserve and test machine, kept in largely original condition, used to safely test upgrades before they go into the "real" machines.</li>
|
||||
</ul>
|
||||
|
||||
<h2>Machine Inventory</h2>
|
||||
<p>All four machines were manufactured at Atari Taiwan Manufacturing Co. (indicated by the "A1" prefix in the serial numbers).</p>
|
||||
<table>
|
||||
<tr><th>Machine</th><th>Serial</th><th>Manufactured</th><th>Board</th></tr>
|
||||
<tr><td>Mega ST 2</td><td>A1 7B 4010182</td><td>11/1987</td><td>CA200019 / C100167-001 Rev.5.0</td></tr>
|
||||
<tr><td>Mega ST 4 "High"</td><td>A1 05 4009044</td><td>05/1990</td><td>—</td></tr>
|
||||
<tr><td>Mega ST 4 "Low"</td><td>A1 08 4011143</td><td>08/1990</td><td>—</td></tr>
|
||||
<tr><td>Mega ST 4 Heirloom</td><td>A1 08 4011015</td><td>08/1990</td><td>CA200019 / C100167-001 Rev.B</td></tr>
|
||||
<tr><td>Keyboard (Heirloom)</td><td>A1 07 4085985</td><td>07/1990</td><td>CA200043-004</td></tr>
|
||||
</table>
|
||||
|
||||
<h2>Extensions Not Yet Installed</h2>
|
||||
<p>A few upgrades have been bought or built but aren't in a machine yet, either waiting to go in or kept as spares:</p>
|
||||
<ul>
|
||||
<li><strong>A second <a href="/retro/gotek/">Gotek floppy emulator</a></strong>, bought alongside the one fitted to the "Low" machine, still unbuilt and ready for another machine or as a spare.</li>
|
||||
<li><strong>An <a href="/retro/eiffel-pico/">Eiffel Pico USB adapter</a></strong>, bought and configured but not yet installed, so I haven't decided which machine it will go into.</li>
|
||||
<li><strong>A new <a href="/retro/sidecartridge/">SidecarTridge Multi-device</a> Revision 3</strong>, bought as an upgrade over the Revision 0 in use on the "Low" machine, still uninstalled until I decide where to put it.</li>
|
||||
<li><strong>An <a href="/retro/acsi2stm/">ACSI2STM</a> adapter</strong>, bought but not yet in use anywhere, an alternative ACSI hard-disk emulator to the UltraSatan.</li>
|
||||
<li><strong>An <a href="/retro/atari-vga/">ST2VGA Enhanced</a> adapter</strong>, an active RGB-to-VGA adapter bought as a spare, not currently in use.</li>
|
||||
<li><strong>An original Atari STM-1 mouse converted with the <a href="/retro/laser-mouse/">laser board</a></strong>, upgraded but not currently in use.</li>
|
||||
</ul>
|
||||
|
||||
<p class="note">Fun fact: two of the "problem" machines turned out to have nothing wrong with the boards at all, a badly soldered CPU socket and a leftover blitter patch bridge were the actual culprits. Moral of the story: check your solder joints twice before blaming the silicon.</p>
|
||||
|
||||
<p>For the full story of how it all started, see the <a href="/retro/computer-timeline/">computer timeline</a>.</p>
|
||||
</div>
|
||||
|
||||
@@ -21,6 +21,7 @@ parent: "/retro/"
|
||||
|
||||
<h2>Dialing the DarkForce! BBS</h2>
|
||||
<p>To put it to the test, I dialed into <a href="https://www.telnetbbsguide.com/bbs/dark-force-bbs/" target="_blank">the DarkForce! BBS</a>, an Atari-centric system that has been running since the early 90s on a Mega ST4 with BBS Express! ST software. It's a fitting target for an Atari ST, since it's a fellow Atari machine at heart. With the terminal software on the Mega ST sending <code>ATDT</code> to the Wi-Fi modem, the connection to <code>darkforce-bbs.dyndns.org</code> over Telnet worked, and the ANSI login screen, message boards and file sections of a real BBS came up on the original hardware, no phone line involved.</p>
|
||||
<p>Another BBS I tested is the <a href="http://18.221.141.17" target="_blank">Ignition BBS</a>, also accessible via telnet.</p>
|
||||
|
||||
<h2>Why do it</h2>
|
||||
<p>The obvious question is "why bother?", the Atari ST was never designed
|
||||
@@ -30,4 +31,17 @@ things it was never meant to do, and in experiencing the dial-up era's BBS
|
||||
culture on original hardware, over Wi-Fi instead of a phone line.</p>
|
||||
|
||||
<p class="note">If you're chasing BBS nostalgia on real hardware: budget far more patience for the networking layer than for the actual computer. The 1980s hardware is the easy part; convincing 2020s Wi-Fi and modern BBS ANSI dialects to cooperate is the real challenge.</p>
|
||||
|
||||
<h2>Also worth noting</h2>
|
||||
<p>Jungsi tested a <a href="https://www.jungsi.de/wimodem232-oled-retro/" target="_blank">WiModem232 OLED</a> on his Atari ST and wrote about it on his blog. He used a different modem hardware than I did, but the idea is the same. He used "Connect" as his terminal software on the ST, but I used a different terminal program that could render ANSI graphics in ST Medium resolution, though I'd have to look up which one it was exactly.</p>
|
||||
<p>For better ANSI rendering, <strong>AnsiTerm</strong> is reportedly a better choice than Connect95 for BBS terminal use on the Atari ST.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
<li><a href="https://github.com/dhansel/WifiModem" target="_blank">dhansel's WifiModem - GitHub</a></li>
|
||||
<li><a href="https://www.jungsi.de/wimodem232-oled-retro/" target="_blank">WiModem232 OLED - Jungsi's Corner</a></li>
|
||||
<li><a href="https://www.telnetbbsguide.com/" target="_blank">Telnet BBS Guide</a></li>
|
||||
<li><a href="http://www.sfhqbbs.org/ataribbslist.php" target="_blank">Atari BBS List - sfhqbbs.org</a></li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
---
|
||||
title: "Atari to VGA: Getting the ST Onto a Modern Monitor"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "How I connect the Atari Mega ST machines to modern VGA monitors, with three different RGB-to-VGA adapters."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>Atari to VGA: Getting the ST Onto a Modern Monitor</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>To get the Atari ST onto a modern monitor, I use RGB-to-VGA adapters. I have three of them: a passive MCSWITCH adapter on the "Low" machine, a self-built adapter on the "High" machine, and a newer active ST2VGA Enhanced that isn't in use yet.</p>
|
||||
|
||||
<h2>The MCSWITCH (Low machine)</h2>
|
||||
<p>The <a href="/retro/atari-mega-st-fleet/">Mega ST 4 "Low"</a> uses an MCSWITCH adapter (ATARI Monochrome & Color VGA Adapter) by Olivier Gossuin, bought directly from him in 2021 for 23 EUR. It shows all three ST resolutions on a suitable VGA monitor, with a switch for mono and color. The version documented on <a href="http://www.albersdoerfer.de/erweiterungen/stvga.htm" target="_blank">albersdoerfer.de</a> also has an A/V connector and volume buttons, but mine is an older revision without the volume buttons and with a slightly different look. I can't find my exact version at Olivier's anymore, nor a newer one, so the adapter I have is a bit of a rare older revision.</p>
|
||||
|
||||
<h2>The self-built adapter (High machine)</h2>
|
||||
<p>The <a href="/retro/atari-mega-st-fleet/">Mega ST 4 "High"</a> uses a self-built adapter. I had to build my own because every off-the-shelf adapter blocks the VGA slot of the <a href="/retro/et4000-experiment/">ET4000</a> card, since both connectors sit at the same spot on the machine. My solution is a short cable leading to a small box, which carries the VGA connector and the mono/color switch, so the ET4000's own VGA output stays accessible. I followed the guide at <a href="https://pest.atari.org/www.logicsays.com/atari/mono/docs/atari_vga.htm" target="_blank">pest.atari.org</a> to build the RGB-to-VGA adapter itself.</p>
|
||||
|
||||
<h2>The ST2VGA Enhanced (not yet in use)</h2>
|
||||
<p>I also bought a new active <a href="https://sidecartridge.com/products/st2vga-atari-st/" target="_blank">ST2VGA Enhanced</a> from SidecarTridge, but it isn't in use yet. Unlike the passive adapters, the Enhanced adds an active amplifier and filter stage for early or noisy Atari machines, and carries its own +5V supply over micro-USB. It's designed for machines with weak video output, visible "jailbars", or picky LCD inputs that fail to lock to the signal. I want to try it on the "Low" machine to see whether it cleans up the output on the <a href="https://www.amazon.de/dp/B0957KH8X7/" target="_blank">Dell SE2722HX</a>, which currently shows some faint vertical stripes, and hopefully removes them.</p>
|
||||
|
||||
<h2>A note on monitors</h2>
|
||||
<p>Passive RGB-to-VGA adapters output the Atari's native timings, so color modes (ST Low and ST Medium) need a monitor that can lock to a 15 kHz horizontal sync signal. See my <a href="/retro/atari-monitor-compatibility/">monitor compatibility</a> page for which modern panels actually work. Mono mode (ST High) works on any standard VGA display.</p>
|
||||
|
||||
<h2>VGA switch setup</h2>
|
||||
<p>A 3-port VGA switch box routes the shared Dell monitor between the different machines:</p>
|
||||
<table>
|
||||
<tr><th>Port</th><th>VGA</th><th>USB</th></tr>
|
||||
<tr><td>1</td><td>Atari Mega 4 "High" (direct)</td><td>Raspberry Pi (not connected, otherwise no reboot)</td></tr>
|
||||
<tr><td>2</td><td>MiST</td><td>MiST</td></tr>
|
||||
<tr><td>3</td><td>MiSTer</td><td>MiSTer</td></tr>
|
||||
</table>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="stvga-low.jpg" alt="The MCSWITCH VGA adapter connected to the Atari" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The MCSWITCH adapter on the Mega ST 4 "Low" machine.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
<li><a href="http://www.albersdoerfer.de/erweiterungen/stvga.htm" target="_blank">MCSWITCH (ATARI Monochrome & Color VGA Adapter) - albersdoerfer.de</a></li>
|
||||
<li><a href="https://pest.atari.org/www.logicsays.com/atari/mono/docs/atari_vga.htm" target="_blank">Atari to VGA adapter build guide - pest.atari.org</a></li>
|
||||
<li><a href="https://sidecartridge.com/products/st2vga-atari-st/" target="_blank">ST2VGA Adapter - SidecarTridge (product page)</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
After Width: | Height: | Size: 323 KiB |
@@ -0,0 +1,43 @@
|
||||
---
|
||||
title: "My Computer Timeline: Atari ST, Amiga 500, DOS 486"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "The personal computing story behind the retro corner, from Atari ST and Amiga 500 to DOS 486 and beyond."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>My Computer Timeline: Atari ST, Amiga 500, DOS 486</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>Every retro computing setup has a story. Here's mine, from the first time I sat in front of a screen to the machines I use today.</p>
|
||||
|
||||
<h2>1983-1987: First contact</h2>
|
||||
<p>When I started primary school in 1983, friends already had computers. One showed me everything a C64 could do, except the Lego game he kept promising to show me. That never happened, but I was hooked on computers anyway. Around the same time my father brought home an Epson HX-20, a tiny portable with a small screen and a built-in microcassette drive. That's where I wrote my very first BASIC programs.</p>
|
||||
|
||||
<h2>1987-1990: The Atari ST era</h2>
|
||||
<p>In secondary school a friend named Matthias had an Atari, and a couple of classmates in the class also got Ataris over time. For Christmas 1989 I got my own 1040STFM. A year later, Christmas 1990, came the Mega ST 4 with a MegaFile hard disk, the beginning of a much deeper relationship with the platform. Early programming started with Omikron BASIC, then quickly moved to GFA BASIC, which became the main tool for writing software on the ST. Some of the things I built during that time are preserved here: <a href="https://28k8.moonweb.org/bbs/atari/tropic-dreams/" target="_blank">Tropic Dreams</a>.</p>
|
||||
|
||||
<h2>1990-1992: The Amiga detour</h2>
|
||||
<p>More and more classmates had Amigas, and I wanted one too. The Amiga arrived around April 1991, and while the Atari ST remained the programming machine, the Amiga became the creative hub: <a href="https://28k8.moonweb.org/bbs/amiga/mods/" target="_blank">ProTracker</a> for music, Deluxe Paint for graphics. I also released a few things under the Esprit label: <a href="https://28k8.moonweb.org/bbs/amiga/esprit/" target="_blank">ESPRIT releases</a>.</p>
|
||||
|
||||
<h2>1992-1994: The PC arrives</h2>
|
||||
<p>Christmas 1993 brought a Vobis Highscreen 486 DX2-66 in its distinctive Colani tower case. The PC opened the door to DOS games, and in 1994 the real creative phase began: <a href="https://28k8.moonweb.org/bbs/pc/dosmenu/" target="_blank">DOSMENU</a>, the <a href="https://28k8.moonweb.org/bbs/pc/skyline/" target="_blank">SkyLine</a> demo group, and the first modem connecting to the outside world.</p>
|
||||
|
||||
<h2>1994-2000: The Fido era</h2>
|
||||
<p>A modem in spring 1994 led to the <a href="https://28k8.moonweb.org/bbs/fido/nodelist/" target="_blank">FidoNet</a> world, and by late 1995 I was running my own <a href="https://28k8.moonweb.org/" target="_blank">BBS node</a>. Through the mid-90s I collected old and new machines enthusiastically, building up a collection that lasted until 2005 when most of it was sold off. By 2000, the FidoNet hobby had quietly faded.</p>
|
||||
|
||||
<h2>2000-2009: The Linux server years</h2>
|
||||
<p>After the FidoNet era wound down, the focus shifted to Linux. A home network grew in Augsburg with a Smoothwall firewall, a Red Hat server, a Postfix/Apache mail and web server, and a multimedia workstation, all connected over 10 Mbit thin-Ethernet and a demand-dial RAS connection. A FreeBSD server ran Apache, Sendmail and Perl scripts alongside a Windows NT 4.0 file server. Microsoft certifications in Windows NT 4.0 and IIS 4.0 followed in 2000, and the work at IXOS SOFTWARE AG as a Web Engineer rounded out the professional side. The retro hobby took a back seat during this period, but the collection of old machines was still growing quietly in the background until 2005. The <a href="/timecapsule/location/">location</a>, <a href="/timecapsule/network/">network</a> and <a href="/timecapsule/projects/">projects</a> pages of the timecapsule have the full story.</p>
|
||||
|
||||
<h2>2009-2017: The Apple years</h2>
|
||||
<p>Everything got reduced down to what I actually used daily. The old collection was gone, and the stack became an iMac, an iPhone, and an iPad, with no PCs at home for the first time. A Windows notebook from work was the only non-Apple machine in the house. The retro hobby was completely dormant during this period, while on the iMac .NET Mono tools kept things running.</p>
|
||||
|
||||
<h2>2017-2020: The rebuild begins</h2>
|
||||
<p>In 2017 a Chromebook from Google joined the setup for everyday tasks, and a Synology NAS arrived. MQTT and the first ESP32 LED matrix projects ran directly on the NAS, while Arduino and ESP32 development started as a parallel hobby. The retro hobby was still dormant, but the groundwork for the homelab and smart home was being laid.</p>
|
||||
|
||||
<h2>2020: The retro revival</h2>
|
||||
<p>In 2020 the retro computing hobby came back in full force. The Mega ST 4 fleet was rebuilt, the MiSTer and MIST FPGA boards were added, and this site was born to document it all. The machines from the 90s were given new roles instead of gathering dust: a workstation, a demo machine, a reference piece, and a spare.</p>
|
||||
<p>At the same time the <a href="/infra/">homelab infrastructure</a> grew: Proxmox servers, a Synology NAS, network planning, and a growing <a href="/smarthome/">smart home</a> setup with Home Assistant, MQTT and various ESP projects.</p>
|
||||
|
||||
<p class="note">The pattern seems to be: every 10-15 years I rediscover the machines I grew up with and find new ways to use them.</p>
|
||||
</div>
|
||||
@@ -16,9 +16,19 @@ parent: "/retro/"
|
||||
|
||||
<h2>The MiSTer recreation</h2>
|
||||
<p>The AO486 core on MiSTer FPGA handles the hardware convincingly. The real work was rebuilding the software environment from memory: the MS-DOS version, the memory managers (HIMEM.SYS, EMM386), the Sound Blaster drivers, and the AUTOEXEC.BAT and CONFIG.SYS tuning that made the original machine run smoothly.</p>
|
||||
<img src="mister.jpg" alt="MiSTer menu on NEC MultiSync" loading="lazy">
|
||||
<p class="caption">MiSTer menu on the NEC MultiSync LCD, the same monitor that drives the real retro hardware.</p>
|
||||
|
||||
<h2>Context: DOSMENU</h2>
|
||||
<p>A key part of the preserved environment is <strong><a href="https://28k8.moonweb.org/bbs/pc/dosmenu/">DOSMENU</a></strong>, a boot configuration utility written in Turbo Pascal 6.0 in 1994, originally developed specifically for this Colani 486 machine. DOSMENU let you choose at boot time which AUTOEXEC.BAT and CONFIG.SYS commands to load, a critical feature in the DOS era, where memory management was manual and games often required different driver configurations. Features included saveable presets, a built-in MOD player, PCX picture display, and a DoubleSpace memory unloader. The original source: ~50k of Turbo Pascal, roughly 1900 lines plus some inline assembler.</p>
|
||||
<img src="mister_486_boot1_dosmenu.jpg" alt="DOSMENU Version 2.0 title screen" loading="lazy">
|
||||
<p class="caption">DOSMENU Version 2.0 title screen, the boot configuration utility.</p>
|
||||
<img src="mister_486_boot2_dosmenu.jpg" alt="DOSMENU configuration interface" loading="lazy">
|
||||
<p class="caption">The DOSMENU configuration interface showing system info, AUTOEXEC.BAT and CONFIG.SYS content, and saveable presets (F01-F10) for different boot configurations.</p>
|
||||
<img src="mister_486_boot3_dosmenu.jpg" alt="DOSMENU boot sequence" loading="lazy">
|
||||
<p class="caption">DOSMENU boot sequence showing the QEMM386 memory manager loading, registered to Stefan Koelle.</p>
|
||||
<img src="mister_486_boot4_dosmenu.jpg" alt="DOSMENU loading DOS Navigator" loading="lazy">
|
||||
<p class="caption">DOSMENU unregistered version with DOS Navigator 1.51 (by RIT Research Labs) loading at the C:\> prompt.</p>
|
||||
|
||||
<h2>Why a rebuild from memory</h2>
|
||||
<p>The point isn't just to play DOS games, it's to recapture the computing experience from that era. The way DOS memory management worked, the way sound drivers had to be configured manually, the way batch files chained together to create a usable environment. This level of detail is lost when you just launch a DOS game from a modern frontend. The MiSTer setup recreates the whole boot process, from BIOS POST to the C:\> prompt, the way I remember it from the mid-90s.</p>
|
||||
@@ -31,6 +41,12 @@ parent: "/retro/"
|
||||
<li><strong><a href="https://28k8.moonweb.org/bbs/pc/dosmenu/">DOSMENU</a></strong>, a custom boot configuration utility written specifically for this Colani 486 in 1994. Built in Turbo Pascal, it let you choose at boot time which AUTOEXEC.BAT and CONFIG.SYS commands to load, essential for managing DOS memory across different games and applications.</li>
|
||||
<li><strong>The quirks</strong>, the specific workarounds and tweaks that were needed to get everything running together, the kind of institutional knowledge that only exists on a well-used personal machine.</li>
|
||||
</ul>
|
||||
<img src="mister_486_prg1_shell.jpg" alt="X-OS file manager" loading="lazy">
|
||||
<p class="caption">X-OS (eXtended Operating System), my Norton Commander clone for DOS, browsing the SkyLINE source directory.</p>
|
||||
<img src="mister_486_prg2_diskinfo.jpg" alt="DiskInfo V1.0" loading="lazy">
|
||||
<p class="caption">DiskInfo V1.0, a freeware disk space visualizer I wrote in 1993 for SkyLINE.</p>
|
||||
<img src="mister_486_prg3_tetris.jpg" alt="Tetris Competition" loading="lazy">
|
||||
<p class="caption">Tetris Competition, a two-player Tetris game I wrote for SkyLINE.</p>
|
||||
|
||||
<h2>AO486 vs real hardware</h2>
|
||||
<p>The MiSTer AO486 core handles the emulation convincingly. Timing accuracy is good enough for games that rely on cycle-sensitive behavior. Sound Blaster emulation covers the standard OPL3 FM synthesis and digital audio. The main trade-off is that some hardware-specific quirks, like the behavior of specific ISA bus peripherals, aren't perfectly replicated. But since this is a rebuild from memory rather than an exact copy anyway, that's more than good enough for a working DOS environment.</p>
|
||||
|
||||
|
After Width: | Height: | Size: 1011 KiB |
|
After Width: | Height: | Size: 918 KiB |
|
After Width: | Height: | Size: 833 KiB |
|
After Width: | Height: | Size: 646 KiB |
|
After Width: | Height: | Size: 657 KiB |
|
After Width: | Height: | Size: 876 KiB |
|
After Width: | Height: | Size: 701 KiB |
|
After Width: | Height: | Size: 600 KiB |
|
After Width: | Height: | Size: 51 KiB |
@@ -22,13 +22,17 @@ parent: "/retro/"
|
||||
</ul>
|
||||
|
||||
<h2>The version I use</h2>
|
||||
<p>I use the <a href="https://klydes-korner.site/en/product/ps2-to-atari-eiffel-adapter-with-joysticks/" target="_blank">PS/2 Atari Eiffel adapter with joystick ports</a> from Klyde's Korner. This version connects to the keyboard port (RJ12) of an Atari Mega ST(E) or TT, and includes two joystick ports alongside the PS/2 keyboard and mouse. It's plug and play, comes pre-programmed with the latest firmware (v1.10.1Mq, which fixes a joystick firing problem), and needs no drivers. It connects via an RJ12 (6P6C) straight cable, and works with a native PS/2 keyboard and mouse or certain PS/2-compatible USB devices via a USB-to-PS/2 adapter.</p>
|
||||
<p>I have the <a href="https://www.eiffel-uno.com" target="_blank">Eiffel 3 for Mega ST, Mega STE and TT</a>, bought directly from Olivier Gossuin in 2021 for 18 EUR. As of 2026, the only place to still order one appears to be <a href="https://klydes-korner.site/en/product/ps2-to-atari-eiffel-adapter-with-joysticks/" target="_blank">Klyde's Korner</a>. This version connects to the keyboard port (RJ12) of an Atari Mega ST(E) or TT, and includes two joystick ports alongside the PS/2 keyboard and mouse. It's plug and play, comes pre-programmed with the latest firmware, and needs no drivers. It connects via an RJ12 (6P6C) straight cable, and works with a native PS/2 keyboard and mouse or certain PS/2-compatible USB devices via a USB-to-PS/2 adapter.</p>
|
||||
|
||||
<h2>Why use it</h2>
|
||||
<p>Original Atari keyboards are getting rare and expensive. The Eiffel is a cheap, modern alternative that brings a standard PS/2 keyboard and mouse to the machine, along with the two joystick ports the original keyboard had. It also gives a much better typing feel: I use a Cherry PS/2 keyboard, which is far more pleasant to type on than the original, and a Logitech PS/2 mouse that tracks noticeably better than the original Atari STM1 mouse. It makes the workstation far more practical to use day to day. The older Eiffel versions were originally built and sold by Lyndon Amsdon, with the design documented on the <a href="https://hardware.atari.org/eiffel/index.htm" target="_blank">Atari Hardware Guide</a>, and the project history is covered in the <a href="https://wiki.newtosworld.de/index.php?title=Eiffel_Interface" target="_blank">Atari Wiki</a>.</p>
|
||||
|
||||
<h2>My Setup</h2>
|
||||
<p>In my Mega ST 4 "High" machine the Eiffel connects the PS/2 keyboard and mouse, keeping the workstation fully usable alongside the <a href="/retro/monsterboard/">MonSTerBoard</a>, <a href="/retro/et4000-experiment/">ET4000</a> and <a href="/retro/netusb/">NetUSBee</a>. The original Atari keyboard and mouse are now used with the "Low" machine.</p>
|
||||
<p>In my Mega ST 4 "High" machine the Eiffel connects the PS/2 keyboard and mouse, keeping the workstation fully usable alongside the <a href="/retro/monsterboard/">MonSTerBoard</a>, <a href="/retro/et4000-experiment/">ET4000</a> and <a href="/retro/netusb/">NetUSBee</a>. The original Atari keyboard is now used with the "Low" machine, which pairs it with a <a href="/retro/mouster/">mouSTer</a> and a USB mouse.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="eiffel-ps2.jpg" alt="The Eiffel PS/2 adapter without its case" width="480" height="640" loading="lazy">
|
||||
<p class="caption">The Eiffel PS/2 adapter, shown here without its case.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
|
||||
|
After Width: | Height: | Size: 481 KiB |
@@ -17,34 +17,64 @@ parent: "/retro/"
|
||||
<h2>The Card and Driver</h2>
|
||||
<p>I can confirm that a card with the RAMDAC SC11487CN works with the Nova T8 and T6 drivers. And importantly, this particular card does not need -12V, which simplifies the wiring considerably. The STGA adapter comes with its own VDI (STGA_VDI.SYS, v1.3b), a control panel as a CPX module, and a ROM module that switches to the VGA automatically at boot.</p>
|
||||
|
||||
<h2>Nova driver loading order</h2>
|
||||
<p>When using the ET4000 with Nova drivers, the loading order in the auto-start folder matters. The correct sequence is:</p>
|
||||
<ol>
|
||||
<li><code>Emulator.prg</code> (must be first)</li>
|
||||
<li><code>menu.prg</code> or <code>xmenu.prg</code></li>
|
||||
<li><code>sta_vdi.prg</code></li>
|
||||
</ol>
|
||||
|
||||
<h2>What Made It Difficult</h2>
|
||||
<ul>
|
||||
<li><strong>Power supply overload</strong>, the stock Mega ST PSU simply wasn't designed to feed a MonSTerBoard, an ET4000, and a MegaBus adapter at the same time. The 5V and 12V rails ended up right at their instability limit.</li>
|
||||
<li><strong>The missing -12V</strong>, many ET4000 cards need -12V for their output drivers, usually tapped from the RS-232 port, adding yet another drain on an already stressed supply. The card I used avoids this.</li>
|
||||
<li><strong>Heat with nowhere to go</strong>, the card runs hot, and the Mega ST case has zero provision for active cooling.</li>
|
||||
<li><strong>Signal integrity issues</strong>, the ISA-to-MegaBus adapter introduces reflections at higher frequencies, and access to ET4000 RAM is roughly 65% slower than native ST RAM, with no hardware BitBLT to make up for it.</li>
|
||||
<li><strong>DVI incompatibility</strong>, the EIZO monitor has DVI-D (digital only), but all available DVI-to-VGA adapters only work with DVI-I (which includes analog lines). Since the EIZO lacks the analog pins, a DVI adapter cannot be used. The ET4000 has its own VGA output and connects directly to the monitor. The self-built <a href="/retro/atari-vga/">VGA adapter</a> on the Atari's native VGA output is only used as a fallback for diagnostics, when something goes wrong during boot before the ET4000 driver loads.</li>
|
||||
</ul>
|
||||
|
||||
<h2>How It Got Working</h2>
|
||||
<p>Solving it came down to giving the supply the headroom it needed. With a properly beefed-up power supply to cover the 5V and 12V rails, plus a cooling solution for the card, the stability problems went away. The ET4000 now drives higher resolutions and more colors than the Shifter chip can natively produce, turning the "High" machine into a genuine workstation.</p>
|
||||
|
||||
<h2>GemBench Results</h2>
|
||||
<p>How does the ET4000 actually perform on an 8 MHz 68000? GemBench 6.31 gives the answer. The reference system is an STE 68000 with stock Shifter, the "High" machine has the ET4000 running at 1024x768x256.</p>
|
||||
<img src="gembench.jpg" alt="GemBench 6.31 results on the ET4000" width="640" height="480" loading="lazy">
|
||||
<p class="caption">GemBench 6.31 running on the Mega ST 4 "High" with the ET4000.</p>
|
||||
<table>
|
||||
<tr><th>Test</th><th>Ratio</th><th>What it means</th></tr>
|
||||
<tr><td>VDI Text</td><td>269%</td><td>Nearly 3x faster, the ET4000 handles text rendering</td></tr>
|
||||
<tr><td>VDI Small Text</td><td>174%</td><td>Noticeably faster</td></tr>
|
||||
<tr><td>VDI Graphics</td><td>188%</td><td>Drawing and line work is quicker</td></tr>
|
||||
<tr><td>VDI Enquire</td><td>160%</td><td>Screen queries are faster</td></tr>
|
||||
<tr><td>VDI Text Effects</td><td>112%</td><td>Slightly faster</td></tr>
|
||||
<tr><td>GEM Dialog Box</td><td>97%</td><td>Barely affected</td></tr>
|
||||
<tr><td>Integer Division</td><td>99%</td><td>CPU-bound, unchanged</td></tr>
|
||||
<tr><td>RAM / ROM Access</td><td>99%</td><td>CPU-bound, unchanged</td></tr>
|
||||
<tr><td>Justified Text</td><td>63%</td><td>Slower, GEM still handles this via CPU</td></tr>
|
||||
<tr><td>GEM Window</td><td>69%</td><td>Slower, GEM window management adds overhead</td></tr>
|
||||
<tr><td>VDI Scroll</td><td>53%</td><td>Slower, scrolling is CPU-bound despite the card</td></tr>
|
||||
<tr><td>Blitting</td><td>32%</td><td>Much slower, no hardware BitBLT on the ET4000</td></tr>
|
||||
</table>
|
||||
<p>The overall average sits at 100%, which is misleading. The picture is split: anything the ET4000 can accelerate (text, graphics drawing) runs significantly faster, while GEM-level operations that still go through the CPU (window management, scrolling, blitting) are dragged down by the overhead of driving a higher resolution through the adapted ISA bus. Running at 1024x768 with 256 colors means roughly 3x the pixel count and roughly 25x the data volume compared to ST High (640x400 monochrome), since the ST's fixed 32 KB screen buffer holds far less data per frame than a 256-color 1024x768 framebuffer. The Nova driver without NVDI squeezes the maximum out of this particular card and driver combination. In day-to-day use, the VDI gains are what you see and feel: text is crisp, menus pop up quickly, and drawing applications are noticeably more responsive.</p>
|
||||
|
||||
<h2>The Context</h2>
|
||||
<p>FPGA cores on MiSTer and MiST still only emulate the native ST Shifter, with no ET4000 emulation on the horizon given the FPGA resources it would require. So the real hardware approach remains the only way to get those higher resolutions, and now it works in the Mega ST 4 "High" machine with its dedicated <a href="/retro/atari-monitor-compatibility/">monitor</a>.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="et4000-1.jpg" alt="The ET4000 graphics card with STGA adapter" width="590" height="443">
|
||||
<img src="et4000-1.jpg" alt="The ET4000 graphics card with STGA adapter" width="590" height="443" loading="lazy">
|
||||
<p class="caption">The ET4000 graphics card ready for installation.</p>
|
||||
|
||||
<img src="et4000-2.jpg" alt="ET4000 card installed in the Mega ST" width="590" height="443">
|
||||
<img src="et4000-2.jpg" alt="ET4000 card installed in the Mega ST" width="590" height="443" loading="lazy">
|
||||
<p class="caption">The ET4000 installed in the Mega ST.</p>
|
||||
|
||||
<img src="et4000-3.jpg" alt="ET4000 card detail and wiring" width="590" height="443">
|
||||
<img src="et4000-3.jpg" alt="ET4000 card detail and wiring" width="590" height="443" loading="lazy">
|
||||
<p class="caption">Close-up of the card and its wiring.</p>
|
||||
|
||||
<img src="et4000-4.jpg" alt="ET4000 running at higher resolution" width="590" height="443">
|
||||
<img src="et4000-4.jpg" alt="ET4000 running at higher resolution" width="590" height="443" loading="lazy">
|
||||
<p class="caption">The ET4000 driving a higher resolution desktop.</p>
|
||||
|
||||
<img src="et4000-5.jpg" alt="ET4000 final setup in the workstation" width="590" height="443">
|
||||
<img src="et4000-5.jpg" alt="ET4000 final setup in the workstation" width="590" height="443" loading="lazy">
|
||||
<p class="caption">The finished ET4000 setup in the workstation.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
|
||||
|
After Width: | Height: | Size: 67 KiB |
|
After Width: | Height: | Size: 350 KiB |
|
After Width: | Height: | Size: 70 KiB |
@@ -33,6 +33,14 @@ parent: "/retro/"
|
||||
<p>One of the Gotek emulators is installed internally in my Mega ST 4 "Low" machine, giving it reliable disk-image storage on a USB stick alongside the <a href="/retro/storm-cloudy/">Cloudy/Storm ST combo</a>, the <a href="/retro/sidecartridge/">SidecarTridge</a> and the <a href="/retro/atari-networking-bbs/">Wi-Fi modem</a>. The second Gotek is still unbuilt, waiting to go into another machine or to serve as a spare.</p>
|
||||
<p>For the internal mount I printed a <a href="https://www.thingiverse.com/thing:2664753" target="_blank">Gotek case from Thingiverse</a> that fits in the floppy bay. I used this to relocate the Storm/Cloudy TOS switcher: the 2-way switch is mounted in a slot at the front of the printed case, right where the floppy opening is. So the TOS switcher now sits at the front of the floppy bay, which meant no drilling into the case at all, and there was already space there for it.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="gotek-switch-2.jpg" alt="The relocated TOS switcher at the front of the Gotek case" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The relocated TOS switcher at the front of the printed Gotek case, a clear view of how it sits in the floppy bay.</p>
|
||||
<img src="gotek-back.jpg" alt="Gotek floppy emulator rear view" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The Gotek in the 3D-printed case, with the relocated TOS switcher visible at the front.</p>
|
||||
<img src="gotek-switch.jpg" alt="Gotek with the relocated TOS switcher in the printed case" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The Gotek rear view.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
<li><a href="https://www.chzsoft.de/site/hardware/usb-stick-floppy-emulator-am-atari-st/" target="_blank">USB-Stick-Floppy-Emulator am Atari ST - CHZ-Soft (installation guide)</a></li>
|
||||
|
||||
@@ -10,39 +10,72 @@ sections:
|
||||
- title: "🖥️ The Mega ST Fleet"
|
||||
summary: "Three Mega ST 4 machines and a Mega ST 2, each with a clearly defined role from heirloom to workstation."
|
||||
href: "/retro/atari-mega-st-fleet/"
|
||||
- title: "⚡ ET4000 in the Mega ST"
|
||||
summary: "Adding higher resolutions to the Mega ST 4 'High' via a STGA adapter and an ET4000 card, and what it took to get it working."
|
||||
href: "/retro/et4000-experiment/"
|
||||
- title: "📺 Monitor Compatibility"
|
||||
summary: "The 15kHz problem explained, and which modern monitor panels actually cooperate with Atari colour modes."
|
||||
href: "/retro/atari-monitor-compatibility/"
|
||||
- title: "🔌 Wi-Fi Modem & BBS"
|
||||
summary: "Dialing into telnet bulletin board systems from the Mega ST 4 'Low' using dhansel's WifiModem and terminal software."
|
||||
href: "/retro/atari-networking-bbs/"
|
||||
- title: "🎮 Mega ST 4 Low"
|
||||
summary: "The bargain-bin Mega ST 4 rebuilt as a LowRes demo and games machine with Cloudy/Storm ST, Gotek, UltraSatan and more."
|
||||
href: "/retro/mega-st-low/"
|
||||
- title: "🖥️ Mega ST 4 High"
|
||||
summary: "The high-end workstation with MonSTerBoard, ET4000, NetUSBee, Eiffel and STPSU, running Geneva."
|
||||
href: "/retro/mega-st-high/"
|
||||
- title: "🔧 Mega ST 2"
|
||||
summary: "The spare and test machine for the rest of the fleet."
|
||||
href: "/retro/mega-st2/"
|
||||
- title: "🏛️ Heirloom Mega ST 4"
|
||||
summary: "My father's original Mega ST 4, kept factory-original as a baseline reference."
|
||||
href: "/retro/mega-st-heirloom/"
|
||||
- title: "🌀 Storm ST & Cloudy ST"
|
||||
summary: "Adding 8 MB Alt-RAM and flashable TOS to the Mega ST, switching between EmuTOS and TOS 1.04."
|
||||
summary: "Adding 8 MB Alt-RAM and flashable TOS to the Mega ST, switching between EmuTOS and iTOS 1.04."
|
||||
href: "/retro/storm-cloudy/"
|
||||
- title: "🧠 MonSTerBoard"
|
||||
summary: "How the MonSTerBoard turns the Mega ST 4 'High' into a workstation with 8 MB TT-RAM, dual IDE and flashable TOS."
|
||||
href: "/retro/monsterboard/"
|
||||
- title: "🌐 NetUSBee"
|
||||
summary: "Real internet via STinG and a USB port for FAT16 data exchange with Windows on the Mega ST 4 'High'."
|
||||
href: "/retro/netusb/"
|
||||
- title: "💳 SidecarTridge Multi-device"
|
||||
summary: "An apps platform in a cartridge, adding Wi-Fi, ROM emulation and floppy/hard-disk images to the Mega ST 4 'Low'."
|
||||
href: "/retro/sidecartridge/"
|
||||
- title: "📖 TOS Explained"
|
||||
summary: "A short explanation of TOS, the operating system behind every Atari ST, and the versions that matter today."
|
||||
href: "/retro/tos/"
|
||||
- title: "💾 Gotek Floppy Emulator"
|
||||
summary: "Replacing floppy drives with cheap Gotek emulators and HxC firmware, using USB stick disk images on the Mega ST 4 'Low'."
|
||||
href: "/retro/gotek/"
|
||||
- title: "💽 UltraSatan"
|
||||
summary: "Giving the Mega ST 4 'Low' a real ACSI hard disk on an SD card with the UltraSatan Mini from Lotharek."
|
||||
href: "/retro/ultrasatan/"
|
||||
- title: "💽 ACSI2STM"
|
||||
summary: "An open-source ACSI to SD card hard drive emulator for the Atari ST. Bought, not yet in use."
|
||||
href: "/retro/acsi2stm/"
|
||||
- title: "💳 SidecarTridge Multi-device"
|
||||
summary: "An apps platform in a cartridge, adding Wi-Fi, ROM emulation and floppy/hard-disk images to the Mega ST 4 'Low'."
|
||||
href: "/retro/sidecartridge/"
|
||||
- title: "⌨️ Eiffel Interface"
|
||||
summary: "Connecting a PS/2 keyboard, mouse and joysticks to the Mega ST 4 'High' with the Eiffel adapter."
|
||||
href: "/retro/eiffel/"
|
||||
- title: "⌨️ Eiffel Pico USB"
|
||||
summary: "The modern USB-based Eiffel successor, bringing USB keyboard, mouse and joysticks to the Mega ST. Configured, not yet installed."
|
||||
href: "/retro/eiffel-pico/"
|
||||
- title: "🖱️ mouSTer"
|
||||
summary: "Connecting a modern USB mouse to the Mega ST 4 'Low' with the mouSTer DB-9 adapter."
|
||||
href: "/retro/mouster/"
|
||||
- title: "🖱️ Laser Mouse"
|
||||
summary: "Converting an original Atari STM-1 mouse to a modern laser sensor with the Atari mouse laser board."
|
||||
href: "/retro/laser-mouse/"
|
||||
- title: "📺 Atari to VGA"
|
||||
summary: "Getting the Mega ST onto modern VGA monitors with three RGB-to-VGA adapters: MCSWITCH, a self-build and an ST2VGA Enhanced."
|
||||
href: "/retro/atari-vga/"
|
||||
- title: "📺 Monitor Compatibility"
|
||||
summary: "The 15kHz problem explained, and which modern monitor panels actually cooperate with Atari colour modes."
|
||||
href: "/retro/atari-monitor-compatibility/"
|
||||
- title: "⚡ ET4000 in the Mega ST"
|
||||
summary: "Adding higher resolutions to the Mega ST 4 'High' via a STGA adapter and an ET4000 card, and what it took to get it working."
|
||||
href: "/retro/et4000-experiment/"
|
||||
- title: "🔌 STPSU"
|
||||
summary: "Replacing the aging Mega ST 4 'High' power supply with a modern STPSU for clean, stable power, especially for the ET4000."
|
||||
href: "/retro/stpsu/"
|
||||
- title: "🌐 NetUSBee"
|
||||
summary: "Real internet via STinG and a USB port for FAT16 data exchange with Windows on the Mega ST 4 'High'."
|
||||
href: "/retro/netusb/"
|
||||
- title: "🔌 Wi-Fi Modem & BBS"
|
||||
summary: "Dialing into telnet bulletin board systems from the Mega ST 4 'Low' using dhansel's WifiModem and terminal software."
|
||||
href: "/retro/atari-networking-bbs/"
|
||||
- title: "🧩 MiSTery Core on MIST"
|
||||
summary: "Cloning the Low's SD card to the MIST FPGA for direct SD access, five configurations and a backup plan if the real Mega ST breaks."
|
||||
href: "/retro/mistery-core/"
|
||||
- heading: "Amiga Corner"
|
||||
cards:
|
||||
- title: "⚔️ Vampire, A600GS or MiSTer"
|
||||
@@ -65,19 +98,34 @@ sections:
|
||||
- title: "🛋️ Batocera in the Living Room"
|
||||
summary: "The couch-friendly, software-emulation counterpart to the FPGA rigs, covering everything from Atari ST to arcade."
|
||||
href: "/retro/batocera-living-room/"
|
||||
- title: "🕹️ Mini Arcades & Handhelds"
|
||||
summary: "A buyer's guide to compact retro gaming devices, and how to spot a bootleg clone before you buy one."
|
||||
- title: "🕹️ Handheld Emulation Devices"
|
||||
summary: "ODROID-GO, PocketGo and RG35XX, three handhelds for retro gaming on the move."
|
||||
href: "/retro/mini-arcade-handheld-roundup/"
|
||||
- heading: "DOS & PC"
|
||||
cards:
|
||||
- title: "💻 The 486 DX2-66"
|
||||
summary: "Rebuilding a DOS era from memory on MiSTer FPGA, recreating the environment the way it felt back then."
|
||||
href: "/retro/dos-486-tower/"
|
||||
- title: "👾 PHOBIA DemoGroup Archive"
|
||||
summary: "The PHOBIA DemoGroup Archive, showcasing 1994 PC intros including the Phobia Welcome Intro, written in Turbo Pascal."
|
||||
href: "/phobia/"
|
||||
- title: "🎵 TranceMission Archive"
|
||||
summary: "TranceMission demos and intros from 1992-1995, programmed in Turbo Pascal with assembler on DOS PCs."
|
||||
href: "/tcm/"
|
||||
- title: "🕹️ SkyLINE Productions"
|
||||
summary: "DOS games, demos and tools from the SkyLINE era, 1993-1995."
|
||||
href: "https://28k8.moonweb.org/bbs/pc/skyline/"
|
||||
- heading: "Overview"
|
||||
cards:
|
||||
- title: "🏠 The Retro Corner Today"
|
||||
summary: "A room-by-room snapshot of every retro system currently active across the home."
|
||||
href: "/retro/retro-corner-snapshot/"
|
||||
- title: "📅 Computer Timeline"
|
||||
summary: "From Atari ST and Amiga 500 to DOS 486, the personal computing story behind the retro corner."
|
||||
href: "/retro/computer-timeline/"
|
||||
- title: "💾 28k8 BBS Archive"
|
||||
summary: "tHE tEMPLE BBS Mailbox and 90s scene releases archive from the 28k8 era."
|
||||
href: "https://28k8.moonweb.org"
|
||||
|
||||
---
|
||||
<h1>Retro Computing</h1>
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
---
|
||||
title: "Laser Mouse: Upgrading an Original Atari STM-1 Mouse"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "Converting an original Atari STM-1 mouse to a modern laser sensor with the Atari mouse laser board."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>Laser Mouse: Upgrading an Original Atari STM-1 Mouse</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>I converted an original Atari STM-1 mouse into a laser mouse using the Atari mouse laser board. It keeps the original Atari mouse shell and feel, but replaces the old mechanical/optical innards with a modern laser sensor, so the mouse actually tracks well again. It isn't currently in use on any machine, so it sits among my unused extensions for now.</p>
|
||||
|
||||
<h2>The Atari mouse laser board</h2>
|
||||
<p>The board is a drop-in upgrade for an original Atari mouse. Instead of the worn-out original mechanism, it uses a laser sensor for smooth, accurate tracking while keeping the classic Atari mouse look. The board is sold by Tim (Lavago) and is available by email order.</p>
|
||||
|
||||
<h2>Current version</h2>
|
||||
<p>There's a revised version of the board with several updates:</p>
|
||||
<ul>
|
||||
<li>Green PCB colour.</li>
|
||||
<li>A status LED on the board, which can be disabled with a jumper.</li>
|
||||
<li>Optimised firmware for even smoother movement.</li>
|
||||
<li>New optimised button adapters.</li>
|
||||
<li>Improved quality of the covers.</li>
|
||||
</ul>
|
||||
<p>It's available for Atari forum users by email order for 42 Euro including a 1040ST keychain (not 3D printed). When ordering by email, mention the keyword "Forum" and your address. Email: <a href="mailto:Info@Lavago.de">Info@Lavago.de</a>.</p>
|
||||
|
||||
<h2>Why do it</h2>
|
||||
<p>The original STM-1 mouse is a classic, but the original sensors are getting tired after decades, and the feel isn't great compared to modern pointing devices. The laser board keeps the authentic Atari mouse shell while making it genuinely usable again, which is a nice middle ground between the original mouse and something like the <a href="/retro/mouster/">mouSTer</a> with a modern USB mouse.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="lasermouse.jpg" alt="The converted Atari STM-1 laser mouse" width="640" height="853" loading="lazy">
|
||||
<p class="caption">The original Atari STM-1 mouse converted to a laser sensor.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
<li>Atari mouse laser board - available by email from Tim (Lavago): <a href="mailto:Info@Lavago.de">Info@Lavago.de</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
After Width: | Height: | Size: 275 KiB |
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: "The Heirloom Mega ST 4: A Reference Machine"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "My father's original Mega ST 4, deliberately kept in factory-original condition as a baseline reference."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>The Heirloom Mega ST 4: A Reference Machine</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>This is my father's original Mega ST 4, deliberately kept in its historical, unmodified condition. It's the one machine in the fleet that stays true to how it left the factory.</p>
|
||||
|
||||
<h2>Current State</h2>
|
||||
<ul>
|
||||
<li>Original TOS 1.04 reinstalled (onboard ROM, no external TOS switcher).</li>
|
||||
<li>No modern expansions active, no MonSTerBoard, no Cloudy/Storm.</li>
|
||||
<li>A classic floppy drive instead of a Gotek or emulator.</li>
|
||||
<li>Its own original Atari keyboard and mouse.</li>
|
||||
</ul>
|
||||
|
||||
<h2>Details</h2>
|
||||
<p>Serial: A1 08 4011015 · Manufactured August 1990 · Board: CA200019 / C100167-001 Rev.B</p>
|
||||
<p>Original keyboard: A1 07 4085985 · Manufactured July 1990 · Board: CA200043-004, fully disassembled and cleaned on 6 March 2022.</p>
|
||||
|
||||
<h2>Role in the Fleet</h2>
|
||||
<p>This machine serves as a nostalgia and comparison reference. When problems occur on one of the modified Megas, I can test against this unchanged original state to distinguish bus, flash, or configuration errors from genuine hardware faults. It can also be used as a test platform for uncritical experiments, but stays as close to original as possible for nostalgic reasons.</p>
|
||||
|
||||
<h2>History</h2>
|
||||
<p>The machine spent many years at my parents' house and was fully rebuilt and brought back into operation by me after I got seriously back into retro computing in 2020.</p>
|
||||
|
||||
<h2>Plans</h2>
|
||||
<p>The plan is to use this machine again the way it originally was: hooked up to the old SM124 black-and-white monitor, and with the two old MegaFile hard disks (a MegaFile 60 and a MegaFile 30) connected, keeping the whole setup period-correct. Both are still stored in the basement at my parents' place for now.</p>
|
||||
|
||||
</div>
|
||||
|
After Width: | Height: | Size: 869 KiB |
|
After Width: | Height: | Size: 325 KiB |
|
After Width: | Height: | Size: 481 KiB |
|
After Width: | Height: | Size: 196 KiB |
|
After Width: | Height: | Size: 621 KiB |
|
After Width: | Height: | Size: 243 KiB |
|
After Width: | Height: | Size: 220 KiB |
|
After Width: | Height: | Size: 574 KiB |
|
After Width: | Height: | Size: 224 KiB |
@@ -0,0 +1,60 @@
|
||||
---
|
||||
title: "Mega ST 4 High: The Workstation"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "The high-end Mega ST 4 workstation with MonSTerBoard, ET4000, NetUSBee, Eiffel interface, a modern STPSU and patched TOS 2.06, running Geneva."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>Mega ST 4 High: The Workstation</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>Received for free in 2026, this Mega ST 4 was fully rebuilt and is today my primary workstation. It's the most capable machine in the fleet, running Geneva as a real multitasking environment.</p>
|
||||
|
||||
<h2>Details</h2>
|
||||
<p>Serial: A1 05 4009044 · Manufactured May 1990</p>
|
||||
|
||||
<h2>Work Performed</h2>
|
||||
<ul>
|
||||
<li><strong>Blitter patch</strong>, removed an existing patch and carefully bridged the severed trace with wire, verifying it with a continuity test. The installed blitter (marked S9012 / MM9092V, a National variant from week 12/1990) belongs to an unproblematic batch where the classic Mega ST blitter patch is generally no longer needed.</li>
|
||||
<li><strong>CPU socket</strong>, soldered in a 68000 socket and checked all connections to the board with a multimeter.</li>
|
||||
<li><strong>TOS</strong>, removed the onboard TOS from its sockets to avoid conflicts with the external flash TOS on the MonSTerBoard.</li>
|
||||
<li><strong>Power supply</strong>, replaced with a modern <a href="/retro/stpsu/">STPSU</a> for clean, stable power, which matters especially for the ET4000.</li>
|
||||
<li><strong>Floppy drive</strong>, the original drive was defective and got swapped with a working unit.</li>
|
||||
</ul>
|
||||
|
||||
<h2>MonSTerBoard</h2>
|
||||
<p>The <a href="/retro/monsterboard/">MonSTerBoard</a> is plugged onto the 68000 socket, with jumpers set so TOS 2.06 is used from its flash. The TOS 2.06 is patched to skip the memory check, which noticeably speeds up the boot process. KAOS TOS is also installed on the flash, though currently I always run Geneva with <strong>NeoDesk 4.06</strong> under TOS 2.06. No TOS switcher is wired up yet, so the machine is fixed to TOS 2.06 for now. The MonSTerBoard provides up to 8 MB of AltRAM (TT-compatible range, activated via <code>m_altram.prg</code>), an IDE interface for CF/IDE storage, and a flash ROM holding multiple TOS images. I boot from a 1 GB CompactFlash card over IDE, which is noticeably faster than an ACSI drive.</p>
|
||||
|
||||
<h2>Peripherals in Use</h2>
|
||||
<ul>
|
||||
<li><strong><a href="/retro/et4000-experiment/">ET4000 graphics card</a></strong> in the MegaBus, providing higher resolutions and better display quality with Geneva/NVDI, driving a dedicated monitor.</li>
|
||||
<li><strong><a href="/retro/netusb/">NetUSBee</a></strong> on the ROM port, giving real internet via STinG and a USB port for FAT16 data exchange with Windows.</li>
|
||||
<li><strong><a href="/retro/eiffel/">Eiffel interface</a></strong> for a PS/2 keyboard and mouse, a much better typing feel than the original hardware.</li>
|
||||
<li><strong>Self-built <a href="/retro/atari-vga/">VGA adapter</a></strong>, a short cable to a small box with the VGA connector and mono/color switch, since a standard adapter would block the ET4000's VGA output.</li>
|
||||
</ul>
|
||||
|
||||
<h2>Role</h2>
|
||||
<p>Workstation machine with multitasking (<a href="https://www.atari-wiki.com/index.php/NeoDesk">NeoDesk</a> 4.06 under Geneva), AltRAM, IDE/CF boot, USB and network connectivity, and high-resolution display. My primary system for programming and productive work.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="high-1.jpg" alt="The Mega ST 4 High machine" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The NeoDesk desktop showing 4 MB ST RAM and 8 MB AltRAM from the MonSTerBoard.</p>
|
||||
<img src="high-2.jpg" alt="Mega ST 4 High internal view" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The workstation running GEMBench, with the original Atari keyboard and mouse.</p>
|
||||
<img src="high-3.jpg" alt="Mega ST 4 High detail" width="640" height="853" loading="lazy">
|
||||
<p class="caption">GEMBench 6.31 results comparing the ST reference to the High machine at 1024x768 with 256 colors.</p>
|
||||
<img src="high-4.jpg" alt="Mega ST 4 High expansion" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The complete setup in daylight, showing the GEM desktop on the EIZO FlexScan L365.</p>
|
||||
<img src="high-5.jpg" alt="Mega ST 4 High close-up" width="640" height="640" loading="lazy">
|
||||
<p class="caption">Geneva multitasking: qed, Sound Player, World Clock, and Memory usage running side by side.</p>
|
||||
<img src="high-6.jpg" alt="Mega ST 4 High running" width="640" height="480" loading="lazy">
|
||||
<p class="caption">A side view of the setup, showing the Cherry PS/2 keyboard, Logitech mouse via the Eiffel adapter, and the floppy drive.</p>
|
||||
<img src="high-7.jpg" alt="Mega ST 4 High setup" width="640" height="480" loading="lazy">
|
||||
<p class="caption">Geneva running Vision 3.5a and qed in parallel, with green ambient light behind the EIZO.</p>
|
||||
<img src="high-8.jpg" alt="Mega ST 4 High board" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The NeoDesk Applications menu with Geneva Manager, JAnE, and Vision 3.5a, alongside the system spec file.</p>
|
||||
<img src="high-9.jpg" alt="Mega ST 4 High final" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The full workstation at night, driven by the MonSTerBoard, ET4000, and TOS 2.06.</p>
|
||||
|
||||
</div>
|
||||
@@ -0,0 +1,42 @@
|
||||
---
|
||||
title: "Mega ST 4 Low: Demo and Games Machine"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "The bargain-bin Mega ST 4 rebuilt as a LowRes demo and games machine, with Cloudy/Storm ST, Gotek, UltraSatan, SidecarTridge and a Wi-Fi modem."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>Mega ST 4 Low: Demo and Games Machine</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>Bought via eBay as a bargain, this Mega ST 4 is today my LowRes demo and gaming machine. It's the most heavily expanded of the fleet, but tuned for fast disk-image swapping rather than productivity.</p>
|
||||
|
||||
<h2>Details</h2>
|
||||
<p>Serial: A1 08 4011143 · Manufactured August 1990</p>
|
||||
|
||||
<h2>History and Repair</h2>
|
||||
<p>I had originally cut out the TOS ROMs to experiment with external solutions, and afterwards it was unclear whether the board had been damaged in the process. Moving the <a href="/retro/storm-cloudy/">Cloudy/Storm ST combo</a> to this machine via the MegaBus connector brought it back to stable operation. The actual problem turned out to be a poorly and incompletely soldered CPU socket.</p>
|
||||
|
||||
<h2>Hardware Configuration</h2>
|
||||
<ul>
|
||||
<li><strong>CPU</strong>, 68000 with socket, plus the <a href="/retro/storm-cloudy/">Cloudy/Storm ST combo</a> via the MegaBus adapter.</li>
|
||||
<li><strong>TOS/Flash</strong>, Cloudy as the TOS switcher/flash solution with EmuTOS and PP's improved iTOS 1.04.</li>
|
||||
<li><strong>RAM</strong>, 4 MB onboard ST-RAM plus 8 MB AltRAM via the Storm ST.</li>
|
||||
<li><strong>Mass storage</strong>, a <a href="/retro/gotek/">Gotek floppy emulator</a> in a 3D-printed case and an <a href="/retro/ultrasatan/">UltraSatan</a> ACSI-SD emulator.</li>
|
||||
<li><strong>Peripherals</strong>, a <a href="/retro/sidecartridge/">SidecarTridge Multi-device</a> on the ROM port, a <a href="/retro/atari-networking-bbs/">Wi-Fi modem</a> for dialing into BBSs, an original Atari keyboard with a <a href="/retro/mouster/">mouSTer</a> and USB mouse, and an <a href="/retro/atari-vga/">MCSWITCH</a> adapter for VGA output.</li>
|
||||
</ul>
|
||||
|
||||
<h2>Booting</h2>
|
||||
<p>Switching between High Res and Low Res is done at the VGA adapter, not in software. The iTOS 1.04 boot options select which drive to boot from:</p>
|
||||
<ul>
|
||||
<li><strong>High Res</strong>, switch to EmuTOS on the Cloudy, then set the VGA adapter to Mono. Let it boot through.</li>
|
||||
<li><strong>Low Res</strong>, switch to iTOS 1.04i on the Cloudy, then set the VGA adapter to Color. At the boot prompt:</li>
|
||||
<li><strong>1 + Space</strong>, boot from <code>C:\BT\1</code>, opens D: GAMES</li>
|
||||
<li><strong>2 + Space</strong>, boot from <code>C:\BT\2</code>, opens E: DEMOS</li>
|
||||
<li><strong>3 + Space</strong>, boot from <code>C:\BT\3</code>, opens F: Med-Res</li>
|
||||
</ul>
|
||||
|
||||
<h2>Role</h2>
|
||||
<p>Focused on LowRes demos and games, with convenient image handling via the Gotek and SidecarTridge. The desktop environment is an original <strong>NeoDesk 3.0</strong> installation from the 1990s, just as it was back then. No need for complex productivity software or precise keyboard layouts here. The entire SD card has been cloned to the <a href="/retro/mistery-core/">MiSTery Core on the MIST</a> as a backup and for easy data transfer between the real machine and the FPGA.</p>
|
||||
|
||||
</div>
|
||||
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: "The Mega ST 2: Spare and Test Machine"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "The Mega ST 2 that serves as an inactive backup machine for the rest of the Atari fleet."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>The Mega ST 2: Spare and Test Machine</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>The Mega ST 2 was given to me a while ago. Its role is purely as a backup: it sits inactive and is only meant to be brought back to life if the "High" or "Low" machine ever fails, not as an actively used machine.</p>
|
||||
|
||||
<h2>Current State</h2>
|
||||
<p>It runs on original TOS with the internal RAM configuration, without the separate 4 MB expansion, which was removed for testing purposes and now sits set aside.</p>
|
||||
|
||||
<h2>Details</h2>
|
||||
<p>Serial: A1 7B 4010182 · Manufactured November 1987 · Board: CA200019 / C100167-001 Rev.5.0</p>
|
||||
|
||||
<h2>History</h2>
|
||||
<p>Everything in this machine was moved over to the <a href="/retro/mega-st-high/">Mega ST 4 "High"</a> that I was given, including its original power supply. It's not really a parts donor though, it's simply the spare machine now that the new Mega 4 carries the main setup. Back then it had an intermittent fault: after being on for a long time it would eventually show a white screen on boot. I first suspected the 4 MB expansion and removed it, but the fault persisted. Only after reverting it to the old TOS and a fully original state did it run stably again.</p>
|
||||
|
||||
<h2>Ideas for This Machine</h2>
|
||||
<p>A few possible directions for the Mega ST 2, none of them decided yet:</p>
|
||||
<ul>
|
||||
<li>Reinstalling the 4 MB expansion, which was only removed for testing and is currently sitting set aside.</li>
|
||||
<li>An external <a href="/retro/gotek/">Gotek floppy emulator</a>, since an external unit would suit this machine well.</li>
|
||||
<li>An <a href="/retro/eiffel-pico/">Eiffel Pico USB</a> adapter for a USB keyboard and mouse.</li>
|
||||
<li>The <a href="/retro/acsi2stm/">ACSI2STM</a> as an ACSI hard disk option.</li>
|
||||
<li>A stereo sound mod.</li>
|
||||
<li>Playing MIDI Maze against the <a href="/retro/mega-st-low/">Mega ST 4 "Low"</a>: connect the two machines over MIDI, put the Mega ST 2 on the old MCSWITCH VGA adapter and the NEC monitor, and play together.</li>
|
||||
<li>The old Revision 0 <a href="/retro/sidecartridge/">SidecarTridge</a> could move here once the new Revision 3 is installed in the "Low" machine.</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
|
After Width: | Height: | Size: 771 KiB |
|
After Width: | Height: | Size: 724 KiB |
|
After Width: | Height: | Size: 634 KiB |
|
After Width: | Height: | Size: 590 KiB |
|
After Width: | Height: | Size: 600 KiB |
@@ -1,23 +1,56 @@
|
||||
---
|
||||
title: "Mini Arcades and Handhelds: Sorting the Real Deal from the Bootlegs"
|
||||
title: "Handheld Emulation Devices: ODROID-GO, PocketGo and RG35XX"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "A buyer's guide to compact retro gaming devices, and why the cheapest option is almost never the right one."
|
||||
description: "Three handheld emulation devices for retro gaming on the move, from an ESP32-based ODROID-GO to a pocketable PocketGo and a powerful RG35XX."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>Mini Arcades and Handhelds: Sorting the Real Deal from the Bootlegs</h1>
|
||||
<h1>Handheld Emulation Devices: ODROID-GO, PocketGo and RG35XX</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>The market for tiny plug-and-play arcade cabinets is full of traps. Some devices ship with genuinely licensed classics; others are dressed-up bootleg NES clones with unfamiliar Chinese ROM hacks pretending to be arcade games.</p>
|
||||
<p>For retro gaming away from a screen, I use three handheld emulation devices. Each one covers a different sweet spot in the trade-off between size, power and convenience. The key difference is what systems each one can actually emulate well, and how much effort it takes to get there.</p>
|
||||
|
||||
<h2>What to Watch For</h2>
|
||||
<ul>
|
||||
<li><strong>The bootleg trap</strong>, devices built around VT369-style chips (NES-compatible, not real arcade hardware) often bundle 200+ "games" that turn out to be unlicensed clones and homebrew hacks, cataloged in enthusiast bootleg-game wikis. No Pac-Man, no Donkey Kong, just look-alikes.</li>
|
||||
<li><strong>Genuinely licensed compact options</strong>, devices built around real Namco or SNK licenses deliver actual classics (Pac-Man, Galaga, Dig Dug, dozens of Neo Geo titles) with premium displays, at a similar price point to the bootleg boxes.</li>
|
||||
<li><strong>Expandable options</strong>, some cabinet-style devices accept extra MAME ROMs via SD card, letting you add real arcade classics after the fact, the one feature the bootleg boxes almost never offer without heavy soldering.</li>
|
||||
<li><strong>The maximalist route</strong>, a Raspberry Pi running RetroPie, or a MiSTer FPGA setup, both scale to tens of thousands of games or hardware-accurate arcade cores respectively, at the cost of more setup effort.</li>
|
||||
</ul>
|
||||
<h2>ODROID-GO</h2>
|
||||
<p>The ODROID-GO by Hardkernel is a DIY handheld built around an ESP32 microcontroller. It has a 2.4-inch 320x240 TFT display, a speaker, D-pad, face buttons, shoulder buttons, a Micro SD card slot, and a built-in rechargeable battery. It runs the stock firmware, which loads games from the SD card. The ESP32 is a dual-core chip running at 240 MHz with 4 MB of PSRAM, which is enough for 8-bit systems but starts to struggle with anything heavier.</p>
|
||||
<p><strong>What it plays well:</strong> NES, Game Boy, Game Boy Color, Sega Master System, Sega Game Gear.</p>
|
||||
<p><strong>What it does not play well:</strong> Anything beyond 8-bit is not on there, and would not run well anyway.</p>
|
||||
<p><strong>Game packs:</strong> Full game packs for all supported systems are on the SD card. No need to pick and choose.</p>
|
||||
<p><strong>Why use it:</strong> The killer feature is instant-on. The ESP32 boots in literally no time, you switch it on and the game is right there. A stopped game can be picked up again straight away. No other device in the collection comes close to this. It is the smallest and cheapest of the three, and for pure 8-bit gaming it is surprisingly capable. It is the grab-and-go option when you just want to play some NES or Game Boy games on the couch.</p>
|
||||
<img src="odroid-go.jpg" alt="ODROID-GO system selection screen" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The ODROID-GO showing the Retro-Go system selection screen.</p>
|
||||
|
||||
<p class="note">If a mini-arcade's game list reads like a string of titles you've genuinely never heard of, that's the tell. Real arcade classics have instantly recognisable names, bootlegs hide behind vague, generic-sounding ones.</p>
|
||||
<h2>PocketGo</h2>
|
||||
<p>The original PocketGo by BittBoy is a handheld in a Game-Boy-Advance-style landscape form factor with a 2.4-inch IPS display at 320x240. It runs on an Allwinner F1C100S chip at 533 to 798 MHz with 32 MB of RAM. The community CFW 1.3 firmware (Miyoo CFW) replaces the stock software with GMenu2X as the frontend, adds support for more emulators, a screen tearing fix, theme customisation and better overall performance. The stock firmware works but is rough around the edges, with an inconsistent button mapping across emulators and a less polished menu. It has D-pad, four face buttons, shoulder buttons, and runs off a 1000 mAh battery.</p>
|
||||
<p><strong>What it plays well:</strong> Game Boy, Game Boy Color, Game Boy Advance, NES, Sega Genesis, Sega Master System. The GBA emulation is the real draw here, something the ODROID-GO cannot do.</p>
|
||||
<p><strong>What it does not play well:</strong> SNES is playable but not perfect, with occasional slowdowns. PlayStation, CPS1/CPS2/CPS3, Jaguar, Sega CD and Sega 32X are not possible.</p>
|
||||
<p><strong>Game packs:</strong> Full game packs for all supported systems are on the SD card.</p>
|
||||
<p><strong>Why use it:</strong> It is still pocketable, the IPS screen looks great, and it fills the gap between the ODROID-GO and the RG35XX. If you want Game Boy Advance on the go without carrying something bigger, this is the one. The CFW 1.3 firmware makes a real difference over the stock software.</p>
|
||||
<img src="PocketGo1.jpg" alt="PocketGo boot screen" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The PocketGo booting into Miyoo CFW 1.3.</p>
|
||||
<img src="PocketGo2.jpg" alt="PocketGo system selection" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The system selection screen on the PocketGo.</p>
|
||||
|
||||
<h2>RG35XX</h2>
|
||||
<p>The RG35XX by Anbernic is the serious handheld of the three. It has a 3.5-inch IPS display at 640x480, an Allwinner H313 quad-core ARM Cortex-A53 chip, and significantly more power than the other two. It runs GarlicOS, a custom firmware by Black Seraph built on RetroArch. GarlicOS replaces the stock firmware with a much cleaner interface, adds a sleep mode that lets you resume exactly where you left off, RTC support, overclocking options, and a wider range of configurable emulators. The stock firmware works but is bare-bones and lacks these quality-of-life features. The build quality is noticeably better than the other two devices, with a sturdier feel and a screen that is both larger and sharper.</p>
|
||||
<p><strong>What it plays well:</strong> Everything the ODROID-GO and PocketGo do, plus SNES running perfectly, PlayStation 1, CPS1/CPS2/CPS3 arcade, Jaguar, Sega CD, Sega 32X, and Neo Geo. It also supports HDMI output to a TV.</p>
|
||||
<p><strong>What it does not play well:</strong> Nintendo 64 and PSP are hit-or-miss. Dreamcast is mostly too much for it.</p>
|
||||
<p><strong>Game packs:</strong> Only the major platforms have game packs installed. The smaller systems are not pre-loaded.</p>
|
||||
<p><strong>Why use it:</strong> When you want the full experience, including PlayStation and arcade games, or when you want to hook the handheld up to a TV. It is the heaviest and least pocketable of the three, but it covers the widest range of systems.</p>
|
||||
<img src="RG35xx1.jpg" alt="RG35XX boot screen" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The RG35XX boot screen.</p>
|
||||
<img src="RG35xx2.jpg" alt="RG35XX GarlicOS version" width="640" height="480" loading="lazy">
|
||||
<p class="caption">GarlicOS version 1.4.9 running on the RG35XX.</p>
|
||||
<img src="RG35xx3.jpg" alt="RG35XX system selection" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The system selection screen on the RG35XX.</p>
|
||||
|
||||
<h2>Which One for What</h2>
|
||||
<table>
|
||||
<tr><th>Device</th><th>Best for</th><th>Games loaded</th><th>Screen</th></tr>
|
||||
<tr><td>ODROID-GO</td><td>NES, Game Boy, instant-on 8-bit</td><td>All systems</td><td>2.4" TFT</td></tr>
|
||||
<tr><td>PocketGo</td><td>Game Boy Advance, 16-bit on the go</td><td>All systems</td><td>2.4" IPS</td></tr>
|
||||
<tr><td>RG35XX</td><td>PlayStation, arcade, everything at home</td><td>Major platforms only</td><td>3.5" IPS</td></tr>
|
||||
</table>
|
||||
|
||||
<p class="note">The market for tiny retro gaming handhelds is full of traps. If a device's game list reads like a string of titles you have never heard of, that is the tell. Real arcade classics have instantly recognisable names, bootlegs hide behind vague, generic-sounding ones. All three devices above run proper emulation firmware with real ROMs, not bootleg NES clones dressed up as something else.</p>
|
||||
</div>
|
||||
|
||||
|
After Width: | Height: | Size: 757 KiB |
@@ -13,7 +13,7 @@ parent: "/retro/"
|
||||
|
||||
<h2>Division of Labour</h2>
|
||||
<ul>
|
||||
<li><strong>MiST for Atari ST</strong>, older and more limited in scope than MiSTer, but its ST/STE core is rock solid. It's the default choice for anything Atari, paired with a network-capable configuration for file transfers.</li>
|
||||
<li><strong>MiST for Atari ST</strong>, older and more limited in scope than MiSTer, but its ST/STE core is rock solid. It's the default choice for anything Atari, paired with a network-capable configuration for file transfers. I also run the <a href="/retro/mistery-core/">MiSTery Core</a> on it as a full backup for the <a href="/retro/mega-st-low/">Mega ST 4 "Low"</a>, with the entire SD card cloned from the UltraSatan.</li>
|
||||
<li><strong>MiSTer for everything else</strong>, Amiga, DOS (via the AO486 core), and a huge library of other systems. Its Atari ST core, oddly, is the less reliable one of the two boards, reason enough to keep MiST around instead of retiring it.</li>
|
||||
<li><strong>Native resolution ceiling</strong>, both boards only emulate the original Shifter chip on Atari ST: Low-Res (320×200), Medium-Res (640×200), and High-Res (640×400 mono). No ET4000-style graphics card emulation is on the table; a Falcon030 core with higher native resolutions has been rumoured for years without shipping.</li>
|
||||
<li><strong>Known rough edges</strong>, accessory programs loading but not appearing on the desktop, and disabled XBOOT support, are still open items to chase down on the MiST side.</li>
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
---
|
||||
title: "MiSTery Core on MIST: An FPGA Backup for the Mega ST 4"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "Running the MiSTery Core on the MIST FPGA board as a preserve for the Mega ST 4 Low, with five configurations from original TOS to Viking graphics."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>MiSTery Core on MIST: An FPGA Backup for the Mega ST 4</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>After getting the <a href="/retro/mega-st-low/">Mega ST 4 "Low"</a> fully configured, I cloned its entire UltraSatan SD card for the <a href="/retro/mist-mister-fpga/">MIST</a> FPGA board. The MiSTery Core on the MIST can access SD cards directly, so every partition from the UltraSatan is available right away, no HDD images needed. I can pull the SD card out of the MIST, put it into my computer and copy data straight onto it, just like with the UltraSatan. That keeps the MIST and the "Low" in sync and makes backups and data transfers very easy.</p>
|
||||
|
||||
<h2>Why do it</h2>
|
||||
<p>The main reason is preservation. If the real Mega ST 4 ever breaks down, the MiSTery Core on the MIST can take over. It's not a replacement for the real hardware, but it means a dead Mega 4 doesn't leave me without a working setup.</p>
|
||||
|
||||
<h2>The SD card workflow</h2>
|
||||
<p>The MIST reads the same SD card layout as the UltraSatan. Since the MiSTery Core supports direct SD card access, all partitions are immediately available. There's no need to convert partitions into HDD images or mount them through an emulator menu. The card comes out of the MIST and goes straight into a PC card reader. That makes it trivially easy to move data between the MIST and the real machine, and to keep backups current.</p>
|
||||
|
||||
<h2>My configurations</h2>
|
||||
<p>I've prepared five configurations, each for a different use case:</p>
|
||||
|
||||
<img src="mistery-configs.jpg" alt="The MiSTery Core configuration selection screen" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The MiSTery Core configuration selection screen, showing all five available setups.</p>
|
||||
|
||||
<h3>1. iTOS 1.04 (same as the Low)</h3>
|
||||
<p>The same setup as on the <a href="/retro/mega-st-low/">Mega ST 4 "Low"</a>. With iTOS, the boot options select which drive to boot from:</p>
|
||||
<ul>
|
||||
<li><strong>1 + Space</strong>, boot from <code>C:\BT\1</code>, opens D: GAMES</li>
|
||||
<li><strong>2 + Space</strong>, boot from <code>C:\BT\2</code>, opens E: DEMOS</li>
|
||||
<li><strong>3 + Space</strong>, boot from <code>C:\BT\3</code>, opens F: Med-Res</li>
|
||||
</ul>
|
||||
<p>Exactly the way I have it on the real machine.</p>
|
||||
|
||||
<img src="itos1.jpg" alt="iTOS boot screen showing drive selection" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The iTOS boot screen with the drive selection prompt.</p>
|
||||
<img src="itos2.jpg" alt="iTOS booting from the selected drive" width="640" height="640" loading="lazy">
|
||||
<p class="caption">iTOS booting from the selected drive.</p>
|
||||
<img src="itos3.jpg" alt="iTOS demo running after boot" width="640" height="640" loading="lazy">
|
||||
<p class="caption">A demo running after boot on the iTOS configuration.</p>
|
||||
|
||||
<h3>2. 68020 14 MB with Viking Card</h3>
|
||||
<p>This is the most interesting configuration. On the real Mega 4 "Low", high resolution is limited to 640x400, which always felt small to me, hence the <a href="/retro/et4000-experiment/">ET4000</a> experiments and eventually the <a href="/retro/mega-st-high/">Mega ST 4 "High"</a>. On the MiSTery Core, I can activate an FPGA recreation of the Viking graphics card. The original Viking had 1280x900, the FPGA version uses 1280x1024, which matches exactly the native resolution of my <a href="/retro/atari-monitor-compatibility/">NEC monitor</a>. Unlike the ET4000, which gives me 256 colours, the Viking is black and white only. But paired with Geneva and the faster 68020 processor, it's genuinely pleasant to work on. The core also emulates an EtherNEC and I have STinG configured for networking.</p>
|
||||
|
||||
<img src="viking1.jpg" alt="Viking configuration booting via EmuTOS" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The Viking configuration booting via EmuTOS.</p>
|
||||
<img src="viking2.jpg" alt="Viking GEM desktop loading" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The Viking GEM desktop coming up.</p>
|
||||
<img src="viking3.jpg" alt="Viking GEM desktop at full resolution" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The Viking GEM desktop at full 1280x1024 resolution.</p>
|
||||
<img src="viking4.jpg" alt="Geneva desktop on the Viking card" width="640" height="640" loading="lazy">
|
||||
<p class="caption">Geneva running on the Viking card.</p>
|
||||
<img src="viking5.jpg" alt="Geneva desktop with windows open" width="640" height="640" loading="lazy">
|
||||
<p class="caption">The Geneva desktop with windows open, the final result.</p>
|
||||
|
||||
<h3>3. 68000 8 MB</h3>
|
||||
<p>A slightly improved version of my high resolution configuration without the Viking card. I use this one for testing only.</p>
|
||||
|
||||
<h3>4. ST TOS 1.04</h3>
|
||||
<p>As close to the original ST as possible. For playing floppy games and demos in a native configuration.</p>
|
||||
|
||||
<h3>5. STE TOS 1.62</h3>
|
||||
<p>Same idea, but for STE-specific content. Original floppy games and demos that need STE hardware.</p>
|
||||
|
||||
<h2>How it compares to the real Low</h2>
|
||||
<p>The MiSTery Core is an accurate FPGA recreation, so it behaves very much like the real hardware. The biggest practical differences are the Viking card option, which the real Mega ST 4 doesn't have, and the fact that the MIST has no physical MegaBus or ACSI port. But for the core use cases, preserving the "Low" setup and running floppy content, it's a solid stand-in.</p>
|
||||
|
||||
</div>
|
||||
|
After Width: | Height: | Size: 234 KiB |
|
After Width: | Height: | Size: 412 KiB |
|
After Width: | Height: | Size: 301 KiB |
|
After Width: | Height: | Size: 373 KiB |
|
After Width: | Height: | Size: 348 KiB |
|
After Width: | Height: | Size: 152 KiB |
|
After Width: | Height: | Size: 1008 KiB |
|
After Width: | Height: | Size: 573 KiB |
|
After Width: | Height: | Size: 450 KiB |
@@ -38,8 +38,35 @@ parent: "/retro/"
|
||||
<h2>Software</h2>
|
||||
<p>Alan provides three programs for the MonSTerBoard: M_FLASH.ZIP to write the onboard flash, M_ALTRAM.ZIP to configure the RAM (2, 4, 6 or 8 MB, then placed in the auto-start folder), and M_RTC.ZIP for the Dallas RTC module. In total you can install four TOS versions: two 192 KB and two 256 KB images.</p>
|
||||
|
||||
<h2>TOS selection via the jumpers</h2>
|
||||
<p>The TOSSEL and FLASHSW jumpers pick which TOS the machine boots from the flash. A common setup maps them like this:</p>
|
||||
<table>
|
||||
<tr><th>TOSSEL</th><th>FLASHSW</th><th>Boots</th></tr>
|
||||
<tr><td>off</td><td>off</td><td>EmuTOS</td></tr>
|
||||
<tr><td>on</td><td>off</td><td>PP's modified TOS 1.04</td></tr>
|
||||
<tr><td>off</td><td>on</td><td>TOS 2.06</td></tr>
|
||||
<tr><td>on</td><td>on</td><td>Kaos TOS 1.4.3</td></tr>
|
||||
</table>
|
||||
<p>The MonSTerBoard is generally blitter-agnostic and works with all common Mega ST blitter variants, as long as the bus signals are clean. Common symptoms like a white screen with no boot are, in practice, usually caused by contact issues at sockets or incorrect jumper settings, not a defective blitter.</p>
|
||||
|
||||
<h2>My Setup</h2>
|
||||
<p>In my Mega ST 4 "High" machine the MonSTerBoard provides the 8 MB of TT-RAM that TOS 2.06 and Geneva use for real multitasking. For storage I use the dual IDE interface, with a CompactFlash card attached and booting the system directly from it. There's no ACSI hard drive connected in this machine; the IDE boot is noticeably faster than an ACSI drive would be. Combined with the <a href="/retro/et4000-experiment/">ET4000 graphics card</a> and its dedicated monitor, it's the most capable machine in the fleet.</p>
|
||||
<p>In my Mega ST 4 "High" machine the MonSTerBoard provides the 8 MB of TT-RAM that TOS 2.06 and Geneva use for real multitasking. For storage I use the dual IDE interface, booting the system directly from a CompactFlash card. I started with a 4 GB card, but that didn't work reliably, so I switched to a 1 GB card, which works fine. There's no ACSI hard drive connected in this machine; the IDE boot is noticeably faster than an ACSI drive would be. Combined with the <a href="/retro/et4000-experiment/">ET4000 graphics card</a> and its dedicated monitor, it's the most capable machine in the fleet.</p>
|
||||
|
||||
<h2>Geneva and NeoDesk</h2>
|
||||
<p>Geneva and NeoDesk run together well on the MonSTerBoard, using the 8 MB of AltRAM. The two desktop modes can be switched without renaming any files:</p>
|
||||
<ul>
|
||||
<li><strong>Standard Desktop</strong>, the default TOS desktop.</li>
|
||||
<li><strong>Geneva</strong>, start <code>auto\geneva.prg</code> with "G" and <code>auto\neoload.prg</code> also with "G". Rename <code>newdesk.inf</code> to <code>newdesk.inX</code> (with an X instead of F).</li>
|
||||
</ul>
|
||||
<p>Geneva and NeoDesk can also be started directly from the desktop without renaming anything.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="monster-ide.jpg" alt="MonSTerBoard IDE adapter with CompactFlash card" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The MonSTerBoard IDE adapter with a CompactFlash card attached.</p>
|
||||
<img src="monster-1gb.jpg" alt="MonSTerBoard with the 1 GB CompactFlash card" width="640" height="640" loading="lazy">
|
||||
<p class="caption">After the 4 GB card didn't work, I switched to a 1 GB CompactFlash card.</p>
|
||||
<img src="monster-pins.jpg" alt="MonSTerBoard pins and jumper block" width="640" height="480" loading="lazy">
|
||||
<p class="caption">The MonSTerBoard pins and jumper block.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
|
||||
|
After Width: | Height: | Size: 467 KiB |
|
After Width: | Height: | Size: 68 KiB |
|
After Width: | Height: | Size: 61 KiB |
@@ -0,0 +1,34 @@
|
||||
---
|
||||
title: "mouSTer: USB Mouse to Atari Adapter"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "Using the mouSTer adapter to connect a modern USB mouse to the Atari Mega ST 4 'Low' via the DB-9 port."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>mouSTer: USB Mouse to Atari Adapter</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>My <a href="/retro/atari-mega-st-fleet/">Mega ST 4 "Low"</a> machine uses a mouSTer, a universal USB HID to DB-9 adapter that lets me connect a modern USB mouse to the Atari. The original Atari mouse isn't in use here, instead the mouSTer gives the machine a far more comfortable USB mouse.</p>
|
||||
|
||||
<h2>What the mouSTer is</h2>
|
||||
<p>mouSTer is the first fully configurable USB adapter for old computers, created by willyvmm. It plugs into the DB-9 mouse/joystick port of an Atari ST (and many other old computers) and lets you use a modern USB mouse. It's open source, with firmware updates done easily via a USB memory stick.</p>
|
||||
|
||||
<h2>What it can do</h2>
|
||||
<ul>
|
||||
<li><strong>Atari mouse emulation</strong>, so a USB mouse behaves like the original Atari mouse.</li>
|
||||
<li><strong>Full configuration</strong>, adjustable mouse speed, full button mapping, and configurable autofire on any button.</li>
|
||||
<li><strong>Wide USB support</strong>, it works with essentially all USB mice and gamepads.</li>
|
||||
<li><strong>Easy firmware updates</strong> via USB memory.</li>
|
||||
</ul>
|
||||
|
||||
<h2>My Setup</h2>
|
||||
<p>On the Mega ST 4 "Low" machine the mouSTer connects a USB mouse to the DB-9 port, giving a much better feel than the original Atari mouse. It works alongside the <a href="/retro/storm-cloudy/">Cloudy/Storm ST combo</a>, the <a href="/retro/gotek/">Gotek</a>, the <a href="/retro/ultrasatan/">UltraSatan</a>, the <a href="/retro/sidecartridge/">SidecarTridge</a> and the <a href="/retro/atari-networking-bbs/">Wi-Fi modem</a>. The original Atari keyboard is still used on this machine.</p>
|
||||
|
||||
<p class="note">Worth a warning: before settling on the mouSTer I tested the <a href="https://polyplay.xyz/PS-2-Mausadapter-Atari-ST" target="_blank">PS/2 mouse adapter from Polyplay</a>, but it simply didn't work. I wrote to the shop several times and they even sent a second unit, but that one failed too. The shop still sells it, and despite asking the operator several times whether they had ever tested it themselves, I got no answer. If you're tempted, I'd test before you commit, or just go straight for a mouSTer.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
<li><a href="https://github.com/willyvmm/mouSTer" target="_blank">mouSTer - GitHub (project page)</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -21,6 +21,7 @@ parent: "/retro/"
|
||||
|
||||
<h2>Real Internet with STinG</h2>
|
||||
<p>For networking I use the STinG TCP/IP stack together with the <code>enec.stx</code> (or <code>enec3.stx</code> for 68030) network card driver. Once configured, the Mega ST gets a real IP address on the network and can reach the internet, connecting the 1980s machine to modern services. The original NetUSBee was developed by Candle'O'Sin, and the current production runs are sold by Lotharek in a sturdy grey metal case that matches the Atari look.</p>
|
||||
<p>STinG MAC addresses on my machines: Mega ST 4 "High" <code>00:B7:F8:77:C6:B3</code>, MiST <code>A0:CE:C8:5D:9C:A2</code>.</p>
|
||||
|
||||
<h2>Exchanging Data with Windows via USB</h2>
|
||||
<p>The USB port is particularly handy for data exchange. I use a FAT16-formatted USB stick, which the ST can read and write through the USB mass-storage driver. Because FAT16 is also readable on a modern Windows PC, I can transfer files between the Atari and a Windows machine just by moving the stick between them, no special cables or network tricks required.</p>
|
||||
@@ -33,4 +34,15 @@ parent: "/retro/"
|
||||
<li><a href="https://www.jungsi.de/retro-atari-st-netusbee/" target="_blank">NetUSBee [Atari ST] - Jungsi's Corner (installation guide)</a></li>
|
||||
<li><a href="https://lotharek.pl/productdetail.php?id=46" target="_blank">Netusbee - Lotharek (order page, firmware and drivers)</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>WiFi SNTP Clock</h2>
|
||||
<p>A separate ESP module provides WiFi time synchronisation for the Atari ST. <a href="https://www.chzsoft.de/site/hardware/wifi-sntp-clock-for-the-atari-st-tt-falcon/" target="_blank">czietz's simple WiFi SNTP firmware</a> runs on the ESP and communicates with the Atari over a serial connection. Once connected, Connect95 can be used for serial communication, and WgetST can download files via HTTP, though it is limited to HTTP only.</p>
|
||||
|
||||
<h2>Going online via proxy</h2>
|
||||
<p>With STinG configured and the network running, the next step is getting actual services accessible from the Atari. Two approaches work well:</p>
|
||||
<ul>
|
||||
<li><a href="https://github.com/atauenis/webone" target="_blank">WebOne</a>, a proxy server that translates HTTP requests so that a vintage browser like Cab can browse the web through it. Installation docs are on the <a href="https://github.com/atauenis/webone/wiki/Linux-installation" target="_blank">GitHub wiki</a>.</li>
|
||||
<li><a href="https://github.com/tenox7/wrp" target="_blank">Web Rendering Proxy (WRP)</a>, an alternative that renders pages server-side and serves them as images, useful when nothing else works with the old browser. Runs as a Docker container.</li>
|
||||
</ul>
|
||||
<p>Both run on a Linux machine on the same network, with the Atari pointing its browser proxy settings at that machine's IP. A Linux LXC container on the homelab can serve as a dedicated Atari internet proxy server for this purpose.</p>
|
||||
</div>
|
||||
|
||||
@@ -12,12 +12,12 @@ parent: "/retro/"
|
||||
<p>What started with childhood memories of an Atari ST and an Amiga 500 turned into a full-blown home retro-computing corner after 2020. Here's a snapshot of the whole setup, which machines are actually set up and running right now, and which are boxed and ready to use on demand.</p>
|
||||
|
||||
<h2>The study</h2>
|
||||
<p>The study holds the bulk of the serious gear. The <a href="/retro/mist-mister-fpga/">MiSTer FPGA</a> and the MiST FPGA are set up here, both connected to a <a href="https://www.nec-display.com/" target="_blank">NEC 1970NXp</a>. The <a href="/retro/atari-mega-st-fleet/">Mega ST 4 "Low"</a> machine is set up and running on a <a href="https://www.amazon.de/dp/B0957KH8X7/" target="_blank">Dell SE2722HX 27</a> that handles 15kHz, serving as the demo- and game-machine.</p>
|
||||
<p>The study holds the bulk of the serious gear. The <a href="/retro/mist-mister-fpga/">MiSTer FPGA</a> and the MiST FPGA are set up here, both connected to a <a href="https://www.nec-display.com/" target="_blank">NEC 1970NXp</a>. The MiST runs the <a href="/retro/mistery-core/">MiSTery Core</a> as a backup for the <a href="/retro/mega-st-low/">Mega ST 4 "Low"</a>, with the entire SD card cloned from the UltraSatan. The <a href="/retro/atari-mega-st-fleet/">Mega ST 4 "Low"</a> machine is set up and running on a <a href="https://www.amazon.de/dp/B0957KH8X7/" target="_blank">Dell SE2722HX 27</a> that handles 15kHz, serving as the demo- and game-machine.</p>
|
||||
<p>The rest of the Atari hardware is stored here but not set up, mainly for lack of space:</p>
|
||||
<ul>
|
||||
<li><strong>The Mega ST 4 "High"</strong>, the upgraded workstation, is boxed and can be set up on demand. It has its own EIZO FlexScan L365 15-inch monitor for the ET4000, and when I use it I set it up in the living room on the dining table. The L365 is a genuinely good 15-inch panel, with a sharp 1024×768 image and wide viewing angles that make it a great fit for high-resolution Atari desktop work, and it does the ET4000's output justice.</li>
|
||||
<li><strong>The heirloom Mega ST 4</strong>, kept factory-original, is not set up.</li>
|
||||
<li><strong>The Mega ST 2</strong>, the spare and donor machine, is not set up.</li>
|
||||
<li><strong><a href="/retro/mega-st-high/">The Mega ST 4 "High"</a></strong>, the upgraded workstation, is boxed and can be set up on demand. It has its own EIZO FlexScan L365 15-inch monitor for the ET4000, and when I use it I set it up in the living room on the dining table. The L365 is a genuinely good 15-inch panel, with a sharp 1024×768 image and wide viewing angles that make it a great fit for high-resolution Atari desktop work, and it does the ET4000's output justice.</li>
|
||||
<li><strong><a href="/retro/mega-st-heirloom/">The heirloom Mega ST 4</a></strong>, kept factory-original, is not set up.</li>
|
||||
<li><strong><a href="/retro/mega-st2/">The Mega ST 2</a></strong>, the spare and donor machine, is not set up.</li>
|
||||
</ul>
|
||||
|
||||
<h2>Why the EIZO FlexScan L365 is a great fit</h2>
|
||||
@@ -49,5 +49,5 @@ parent: "/retro/"
|
||||
<h2>How it all connects</h2>
|
||||
<p>All machines share the same network infrastructure, with FTP access to the NAS for file transfers. Disk images and software archives are stored centrally and served to individual machines as needed. The MiSTer and MiST both use SD cards for storage, while the original hardware uses CompactFlash adapters or SCSI-to-IDE bridges depending on the machine. The Raspberry Pi 400 accesses the same NFS shares as the other Pis in the flat.</p>
|
||||
|
||||
<p class="note">The honest status update: several open items remain, documenting the exact handheld models, and the full-size <a href="/retro/the-a1200/">A1200</a> is on pre-order ahead of its 4 December 2026 launch. Retro computing, it turns out, is never really "done."</p>
|
||||
<p class="note">The <a href="/retro/the-a1200/">A1200</a> console is on pre-order ahead of its 4 December 2026 launch. Retro computing, it turns out, is never really "done."</p>
|
||||
</div>
|
||||
|
||||
@@ -39,6 +39,10 @@ parent: "/retro/"
|
||||
|
||||
<h2>My Setup</h2>
|
||||
<p>The original Revision 0 SidecarTridge is in use on the Mega ST 4 "Low" machine. The new Revision 3 I've bought but not yet installed, so it's still sitting alongside the other uninstalled extensions until I decide where to use it.</p>
|
||||
<p>Future plan: fully wire the SidecarTridge and bring its buttons to the front of the case for easier access without having to reach into the cartridge slot area.</p>
|
||||
|
||||
<h2>ROM and floppy emulation</h2>
|
||||
<p>ROM emulation works, but only partially with TOS 2.06 on the MonSTerBoard. Floppy emulation, on the other hand, works very well: floppy images can be created with HxC Floppy Emulator on Windows and transferred to the SidecarTridge, making it easy to move data between a modern PC and the Atari.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
|
||||
@@ -21,16 +21,16 @@ parent: "/retro/"
|
||||
<p>With the Storm ST and Cloudy ST combo in place, the machine boots into EmuTOS 1.0.1 with all 8 MB of Alt-RAM available, or switches over to PP's improved iTOS 1.04 for maximum software compatibility with games and demos from the era. iTOS 1.04 adds real FAT16 filesystem support, so it works much better with hard disks and mass storage, plus a few welcome extras on top of the classic TOS 1.04 behaviour. It's the best of both worlds: the modern conveniences of EmuTOS combined with the improved, authentic-feeling iTOS.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="storm-cloudy-1.jpg" alt="Storm ST and Cloudy ST installed in the Mega ST" width="590" height="443">
|
||||
<img src="storm-cloudy-1.jpg" alt="Storm ST and Cloudy ST installed in the Mega ST" width="590" height="443" loading="lazy">
|
||||
<p class="caption">The Storm ST and Cloudy ST combo installed in the Mega ST.</p>
|
||||
|
||||
<img src="storm-cloudy-2.jpg" alt="Storm ST and Cloudy ST board detail" width="590" height="443">
|
||||
<img src="storm-cloudy-2.jpg" alt="Storm ST and Cloudy ST board detail" width="590" height="443" loading="lazy">
|
||||
<p class="caption">Close-up of the Storm ST and Cloudy ST boards.</p>
|
||||
|
||||
<img src="storm-cloudy-3.jpg" alt="Storm ST and Cloudy ST with wiring" width="590" height="443">
|
||||
<img src="storm-cloudy-3.jpg" alt="Storm ST and Cloudy ST with wiring" width="590" height="443" loading="lazy">
|
||||
<p class="caption">The Storm ST and Cloudy ST with their wiring in place.</p>
|
||||
|
||||
<img src="storm-cloudy-4.jpg" alt="Storm ST and Cloudy ST final install" width="590" height="443">
|
||||
<img src="storm-cloudy-4.jpg" alt="Storm ST and Cloudy ST final install" width="590" height="443" loading="lazy">
|
||||
<p class="caption">The finished installation in the Mega ST.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
---
|
||||
title: "STPSU: Modern Replacement Power Supply for the Mega ST"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "Replacing the aging Mega ST power supply with a modern CenturionTech STPSU for stable, clean power, especially for the ET4000."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>STPSU: Modern Replacement Power Supply for the Mega ST</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>My <a href="/retro/atari-mega-st-fleet/">Mega ST 4 "High"</a> machine runs on a modern replacement power supply, the <a href="https://centuriontech.eu/product/stpsu-st/" target="_blank">STPSU</a> from CenturionTech. I went for this because the original PSU is aging, and a modern supply delivers far more stable power, which matters especially with the <a href="/retro/et4000-experiment/">ET4000</a> graphics card drawing from the 5V and 12V rails.</p>
|
||||
|
||||
<h2>Why a new power supply</h2>
|
||||
<p>The original Atari PSUs are decades old now, and their output rails can drift, ripple or sag under load. A highly upgraded machine like the "High" with its MonSTerBoard, IDE storage and ET4000 card draws more current than a stock ST, and a clean, stable supply avoids the crashes and instability that can come from a worn-out PSU. The STPSU is a drop-in replacement designed specifically for the Atari 520/1040 STF/STFM/E and Mega ST machines.</p>
|
||||
|
||||
<h2>STPSU features</h2>
|
||||
<ul>
|
||||
<li><strong>True plug-and-play</strong>, a complete drop-in replacement, no modification to the computer needed.</li>
|
||||
<li><strong>230V and 110V AC</strong>, works on both power networks.</li>
|
||||
<li><strong>Efficient switched-mode design</strong>, very low heat dissipation.</li>
|
||||
<li><strong>High current output</strong>, supports heavily upgraded and modified configurations.</li>
|
||||
<li><strong>Stable, low-noise output</strong>, in all working conditions.</li>
|
||||
<li><strong>Zero noise design</strong>, no heatsink or fan needed.</li>
|
||||
<li><strong>Extra on-board output connector</strong>, to power additional devices.</li>
|
||||
<li><strong>On-board LED indicators</strong>, for operational status.</li>
|
||||
<li><strong>Safety features</strong>, thermal shutdown, short-circuit and over-current protection.</li>
|
||||
</ul>
|
||||
|
||||
<h2>My Setup</h2>
|
||||
<p>In the Mega ST 4 "High" machine the STPSU provides clean, stable power to the <a href="/retro/monsterboard/">MonSTerBoard</a>, IDE storage, the <a href="/retro/et4000-experiment/">ET4000</a> and the rest of the workstation, keeping everything running reliably.</p>
|
||||
|
||||
<h2>Gallery</h2>
|
||||
<img src="stpsu-installed-1.jpg" alt="The STPSU installed in the Mega ST" width="480" height="640" loading="lazy">
|
||||
<p class="caption">The STPSU installed in my Mega ST 4 "High" machine.</p>
|
||||
<img src="stpsu-installed-2.jpg" alt="STPSU installation detail" width="640" height="480" loading="lazy">
|
||||
<p class="caption">A closer look at the installed STPSU.</p>
|
||||
|
||||
<h2>Manual and documentation</h2>
|
||||
<p>CenturionTech provide a <a href="https://centuriontech.eu/download/STPSU%20User%20manual%201.01.pdf" target="_blank">user manual PDF</a>. Since such documents can disappear from the web, I've also kept a local copy of the manual (version 1.01) in this project:</p>
|
||||
<p><a href="STPSU-User-Manual-1.01.pdf" download>Download the STPSU User Manual (1.01) here</a></p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
<li><a href="https://centuriontech.eu/product/stpsu-st/" target="_blank">STPSU r2022 power supply unit - CenturionTech (product page)</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 65 KiB |
@@ -0,0 +1,71 @@
|
||||
---
|
||||
title: "TOS: The Atari ST Operating System Explained"
|
||||
section: "retro"
|
||||
tags: "retro"
|
||||
description: "A short explanation of TOS and GEM, the versions that matter today, and the multitasking add-ons Geneva and MiNT."
|
||||
layout: base.njk
|
||||
parent: "/retro/"
|
||||
---
|
||||
<h1>TOS: The Atari ST Operating System Explained</h1>
|
||||
<div class="detail-content">
|
||||
|
||||
<p>TOS (The Operating System, sometimes called Tramiel Operating System) is the operating system that powers every Atari ST, STE, TT and Falcon computer.</p>
|
||||
|
||||
<h2>What TOS actually is</h2>
|
||||
<p>TOS combines a compact kernel (GEMDOS, providing file and process handling similar to CP/M and MS-DOS) with GEM (Graphical Environment Manager), the graphical desktop and windowing system that gives the Atari ST its familiar look with icons, windows and drop-down menus.</p>
|
||||
|
||||
<h2>TOS vs. GEM</h2>
|
||||
<p>TOS and GEM are often mentioned together, but they're two distinct layers. TOS is the whole operating system, and it has two main parts: GEMDOS, the low-level kernel handling files, disks and processes, and GEM, the graphical environment. GEM (Graphical Environment Manager) is the desktop and windowing layer itself, providing the icons, windows and drop-down menus, plus its application programming interface. So GEM is a component of TOS, not a separate system. Its origins go back to Digital Research's GEM for the PC, which Atari adapted for the ST.</p>
|
||||
|
||||
<h2>The official Atari TOS versions</h2>
|
||||
<p>The official Atari TOS versions are proprietary and were developed over the years for successive hardware generations. The most important ones:</p>
|
||||
<table>
|
||||
<tr><th>Version</th><th>Year</th><th>Highlights and target hardware</th></tr>
|
||||
<tr><td>TOS 1.00 / 1.02</td><td>1985/86</td><td>The original versions for the first ST models (192 KB ROM), still with many bugs and simple file handling. TOS 1.02 added Blitter and clock support.</td></tr>
|
||||
<tr><td>TOS 1.04</td><td>1989</td><td>The legendary "Rainbow TOS" with massive bug fixes, an improved file selector, real file moving on the desktop, and a faster GEM.</td></tr>
|
||||
<tr><td>TOS 1.62</td><td>1991</td><td>Adapted to the new STe hardware (sound DMA, hardware scrolling), fixing bugs of the problematic TOS 1.6.</td></tr>
|
||||
<tr><td>TOS 2.06</td><td>1991</td><td>A big step (512 KB ROM) for Mega STE/STe: built-in hard disk boot, scrolling file windows, optimised design and extended keyboard mappings.</td></tr>
|
||||
<tr><td>TOS 3.06</td><td>1990</td><td>Developed specifically for the Motorola 68030-based Atari TT030 (uses TT-RAM and higher resolutions).</td></tr>
|
||||
<tr><td>TOS 4.04</td><td>1992</td><td>The last official Atari version, for the Falcon030 with True-Color graphics modes and DSP support.</td></tr>
|
||||
</table>
|
||||
|
||||
<h2>EmuTOS: a modern replacement</h2>
|
||||
<p><a href="https://emutos.sourceforge.io/" target="_blank">EmuTOS</a> is a modern, free, open-source replacement operating system, in contrast to the proprietary official Atari TOS versions. It's a complete reimplementation that in many ways goes beyond what the original Atari ROMs can do:</p>
|
||||
<ul>
|
||||
<li><strong>Built-in hard disk driver</strong>, unlike the original TOS, which often needed external driver software in the AUTO folder, EmuTOS ships with universal drivers for ACSI, SCSI and IDE devices.</li>
|
||||
<li><strong>Built-in command interpreter (EmuCon)</strong>, the larger ROM variants include a command line for entering DOS-like text commands directly.</li>
|
||||
<li><strong>Wide language and keyboard support</strong>, EmuTOS supports noticeably more languages and keyboard layouts than most regionally limited original TOS ROMs.</li>
|
||||
<li><strong>Modern filesystem compatibility</strong>, optimised support for DOS-compatible FAT16 partitions, which makes data exchange with modern PCs very easy.</li>
|
||||
<li><strong>Flexibility and updates</strong>, it can be run on real hardware as a ROM replacement, from floppy, or even as a program from within a running original TOS, without having to burn the physical chips.</li>
|
||||
</ul>
|
||||
|
||||
<h2>PP's improved iTOS 1.04</h2>
|
||||
<p>The versions of TOS 1.04 modified by Pera Putnik ("PPera") add deep, unofficial system extensions that were never part of the original Atari TOS. While the original TOS 1.04 mainly fixed bugs, PPeras version breaks through the old Atari ST's hardware limits. This is the TOS I use on the <a href="/retro/mega-st-low/">"Low"</a> machine. The main additions:</p>
|
||||
<ul>
|
||||
<li><strong>Built-in IDE and ACSI hard disk driver (autoboot)</strong>, normal TOS 1.04 can't boot directly from IDE drives or modern SD-card adapters without first loading a driver (like HDDRIVER) from floppy. PPeras version has universal hard disk drivers built directly into the TOS ROM, so the ST boots immediately and very fast from modern storage like an UltraSatan or IDE modification.</li>
|
||||
<li><strong>FAT32 support and huge partitions</strong>, the original TOS 1.04 only supports the old FAT16 filesystem and is limited to small partitions (roughly 16 to 32 MB per drive). With PPeras patches, TOS 1.04 handles much larger partitions, making data exchange with modern PCs via SD card very easy.</li>
|
||||
<li><strong>"Chimera" versions (TOS 1.04 with the TOS 2.06 desktop)</strong>, these combine the stable, highly compatible core of TOS 1.04 with the more modern desktop of TOS 2.06. You get the comfort of TOS 2.06 (better file windows, desktop shortcuts) while keeping the near-100% game compatibility of the old TOS 1.04.</li>
|
||||
<li><strong>RAM optimisation for games (Raw Image Access / RIA)</strong>, special code in the ROM can stream games directly from hard disk or SD card as an image, so even large 1 MB games run on machines that would otherwise have too little memory for hard disk loaders.</li>
|
||||
</ul>
|
||||
|
||||
<h2>KAOS TOS</h2>
|
||||
<p>KAOS TOS is a comprehensive software patch for the Atari ST's TOS, developed from 1990 to fix bugs and boost performance. It's not a standalone operating system but a patch for the original Atari TOS, mainly based on TOS 1.02 and TOS 1.04. The developers corrected over 80 known programming errors in the original system. KAOS 1.2 was published in the c't magazine, while the later KAOS 1.4.2 was sold commercially.</p>
|
||||
<p>It ran noticeably faster, and although critics claimed this was only from disabling visual effects, re-enabling them disproved that. Since the Atari ST keeps its operating system in ROM, KAOS was often burned onto EPROM chips and physically installed in the machine. Most cleanly written applications ran without problems, with special helper patches for the few incompatible ones. Atari never officially licensed the project but tolerated it on the market. It was shaped by Andreas Kromke and Normen Kowalewski, among others, and became well known in the Atari community through coverage in the ST-Magazin.</p>
|
||||
<p>KAOS TOS is also installed on my <a href="/retro/mega-st-high/">"High"</a> machine, though I currently always run Geneva under TOS 2.06. No TOS switcher is wired up yet, so it's fixed to TOS 2.06 for now.</p>
|
||||
|
||||
<h2>Adding multitasking: Geneva and MiNT</h2>
|
||||
<p>Plain Atari TOS is a single-tasking system: only one main program runs at a time. Two well-known add-ons change that.</p>
|
||||
<h3>Geneva</h3>
|
||||
<p>Geneva is a resource-friendly, self-contained multitasking environment for the Atari ST. It runs on top of normal TOS and replaces or extends GEM, letting several GEM programs and accessories run in parallel, even on older and weaker Atari models without a big performance hit. It needs little memory and stays very compatible with older software that was never written for multitasking, which is why I run it on the <a href="/retro/mega-st-high/">"High"</a> workstation.</p>
|
||||
<h3>MiNT</h3>
|
||||
<p>MiNT (originally "MiNT is Not TOS", later "MiNT is Now TOS") is a much more powerful, Unix-like replacement kernel. It swaps GEMDOS for a Unix-style memory and process management layer, and together with a graphical shell like XaAES or N.AES it enables true, modern multitasking, today usually known as FreeMiNT. The catch is that it often needs stronger hardware, ideally a processor with a memory-management unit (PMMU) such as the Motorola 68030 in the TT or Falcon, and tends to run slowly on a bare old ST. I haven't managed to get MiNT running reliably on any of my machines, which is exactly why the "High" machine uses Geneva instead.</p>
|
||||
<p>The iTOS 1.04i was bought from Peter Putnik for 20 EUR.</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
<li><a href="https://emutos.sourceforge.io/" target="_blank">EmuTOS - official project page</a></li>
|
||||
<li><a href="http://www.mbernstein.de/atari/system/kaos.htm" target="_blank">KAOS TOS - mbernstein.de</a></li>
|
||||
<li><a href="https://atari.8bitchip.info/tosimprgu.html" target="_blank">TOS improving (iTOS) - PP's Atari page</a></li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
@@ -31,6 +31,8 @@ parent: "/retro/"
|
||||
|
||||
<h2>My Setup</h2>
|
||||
<p>In my Mega ST 4 "Low" machine the UltraSatan Mini provides the hard-disk storage on an SD card, alongside the <a href="/retro/storm-cloudy/">Cloudy/Storm ST combo</a>, the <a href="/retro/gotek/">Gotek</a>, the <a href="/retro/sidecartridge/">SidecarTridge</a> and the <a href="/retro/atari-networking-bbs/">Wi-Fi modem</a>.</p>
|
||||
<p>The SD card is partitioned into 8 x 500 MB partitions, giving enough room for games, demos and tools without having to shuffle data around.</p>
|
||||
<p>The UltraSatan driver was bought from Peter Putnik for 15 EUR (I sent 20 EUR).</p>
|
||||
|
||||
<h2>Sources</h2>
|
||||
<ul>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>{{ title }}{% if 'moonweb' not in title and 'stefankoelle' not in title %} · moonweb.org{% endif %}</title>
|
||||
<meta name="description" content="{{ description }}">
|
||||
<meta name="author" content="Stefan Kölle">
|
||||
<meta name="author" content="Stefan Koelle">
|
||||
<meta name="theme-color" content="{% if section == 'hub' %}#3b6ea5{% elif section == 'infra' %}#99333A{% elif section == 'smarthome' %}#1f8a8a{% elif section == 'code' %}#3E5098{% elif section == 'retro' %}#8a6d3b{% else %}#3b6ea5{% endif %}">
|
||||
<link rel="canonical" href="{{ site.url }}{{ page.url }}">
|
||||
<meta property="og:title" content="{{ title }}{% if 'moonweb' not in title and 'stefankoelle' not in title %} · moonweb.org{% endif %}">
|
||||
@@ -18,9 +18,6 @@
|
||||
<meta name="twitter:title" content="{{ title }}{% if 'moonweb' not in title and 'stefankoelle' not in title %} · moonweb.org{% endif %}">
|
||||
<meta name="twitter:description" content="{{ description }}">
|
||||
{% if ogImage %}<meta name="twitter:image" content="{{ site.url }}{{ ogImage }}">{% endif %}
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Lobster&display=swap" rel="stylesheet">
|
||||
<link rel="icon" href="{% if section and section != 'hub' %}/{{ section }}/favicon.svg{% else %}/favicon.svg{% endif %}">
|
||||
<link rel="stylesheet" href="/shared-base.css">
|
||||
<style>:root { --accent: {% if section == 'infra' %}#99333A{% elif section == 'smarthome' %}#1f8a8a{% elif section == 'code' %}#3E5098{% elif section == 'retro' %}#8a6d3b{% else %}#3b6ea5{% endif %}; }</style>
|
||||
@@ -36,7 +33,7 @@
|
||||
{% else %}
|
||||
"name": "{{ title | safe }}{% if 'moonweb' not in title and 'stefankoelle' not in title %} · moonweb.org{% endif %}",
|
||||
"url": "{{ site.url }}",
|
||||
"author": { "@type": "Person", "name": "Stefan Kölle" }
|
||||
"author": { "@type": "Person", "name": "Stefan Koelle" }
|
||||
{% endif %}
|
||||
}
|
||||
</script>
|
||||
@@ -45,7 +42,7 @@
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Person",
|
||||
"name": "Stefan Kölle",
|
||||
"name": "Stefan Koelle",
|
||||
"url": "https://www.moonweb.org",
|
||||
"image": "https://www.moonweb.org/stefan-koelle-foto.jpg",
|
||||
"jobTitle": "Senior Software Developer & Architect",
|
||||
|
||||
@@ -10,6 +10,14 @@
|
||||
|
||||
* { box-sizing: border-box; }
|
||||
|
||||
@font-face {
|
||||
font-family: 'Lobster';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: url('fonts/lobster-latin.woff2') format('woff2');
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
|
||||
@@ -185,6 +193,18 @@ main > h1 {
|
||||
text-underline-offset: 2px;
|
||||
}
|
||||
.detail-content a:hover { color: var(--text); }
|
||||
.detail-content img {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
margin: 1.5rem 0 0.5rem;
|
||||
border-radius: 8px;
|
||||
}
|
||||
.detail-content .caption {
|
||||
font-size: 0.85rem;
|
||||
color: #666;
|
||||
margin: 0 0 1.5rem;
|
||||
}
|
||||
|
||||
.back-link {
|
||||
display: inline-block;
|
||||
|
||||
@@ -14,9 +14,6 @@
|
||||
<meta name="twitter:title" content="{{ title }} · {{ siteTitle | default("moonweb.org") }}">
|
||||
<meta name="twitter:description" content="{{ description }}">
|
||||
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Lobster&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="/shared-base.css">
|
||||
<link rel="stylesheet" href="/theme.css">
|
||||
</head>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<title>{% if title %}{{ title }}{% else %}Stefan Kölle{% endif %}</title>
|
||||
<title>{% if title %}{{ title }}{% else %}Stefan Koelle{% endif %}</title>
|
||||
<meta name="description" content="{{ description }}">
|
||||
<link rel="apple-touch-icon" sizes="57x57" href="/assets/apple-icon-57x57.png">
|
||||
<link rel="apple-touch-icon" sizes="60x60" href="/assets/apple-icon-60x60.png">
|
||||
@@ -25,7 +25,7 @@
|
||||
<meta name="msapplication-TileColor" content="#ffffff">
|
||||
<meta name="msapplication-TileImage" href="/assets/ms-icon-144x144.png">
|
||||
<link rel="canonical" href="{{ site.url }}{{ page.url }}">
|
||||
<meta name="author" content="Stefan Kölle">
|
||||
<meta name="author" content="Stefan Koelle">
|
||||
<meta property="og:title" content="{{ title }}">
|
||||
<meta property="og:description" content="{{ description }}">
|
||||
<meta property="og:url" content="{{ site.url }}{{ page.url }}">
|
||||
@@ -39,7 +39,7 @@
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Person",
|
||||
"name": "Stefan Kölle",
|
||||
"name": "Stefan Koelle",
|
||||
"url": "{{ site.url }}",
|
||||
"jobTitle": "Software Developer",
|
||||
"sameAs": [
|
||||
@@ -84,7 +84,7 @@
|
||||
</div>
|
||||
|
||||
<div id="head">
|
||||
<div id="foto"><img src="/assets/stefan-koelle-foto.jpg" alt="Photo of Stefan Kölle" style="width: 100%;"></div>
|
||||
<div id="foto"><img src="/assets/stefan-koelle-foto.jpg" alt="Photo of Stefan Koelle" style="width: 100%;"></div>
|
||||
</div>
|
||||
|
||||
<div id="background-image"></div>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "Stefan Kölle",
|
||||
"name": "Stefan Koelle",
|
||||
"short_name": "SK",
|
||||
"icons": [
|
||||
{
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>CV - Stefan Kölle</title>
|
||||
<title>CV - Stefan Koelle</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="container">
|
||||
@@ -14,7 +14,7 @@
|
||||
Senior Software Developer & Software Architect
|
||||
</div>
|
||||
<div id="headline-photo">
|
||||
<img src="../assets/stefan-koelle-foto.jpg" alt="Stefan Kölle">
|
||||
<img src="../assets/stefan-koelle-foto.jpg" alt="Stefan Koelle">
|
||||
</div>
|
||||
</div>
|
||||
{% include "cv-content.njk" %}
|
||||
|
||||
@@ -7,6 +7,7 @@ module.exports = function (eleventyConfig) {
|
||||
eleventyConfig.addPassthroughCopy({ "stefankoelle/.htaccess": ".htaccess" });
|
||||
eleventyConfig.addPassthroughCopy({ "stefankoelle/pdf/cv.pdf": "pdf/cv.pdf" });
|
||||
eleventyConfig.addPassthroughCopy({ "shared/base.css": "shared-base.css" });
|
||||
eleventyConfig.addPassthroughCopy({ "shared/fonts/lobster-latin.woff2": "fonts/lobster-latin.woff2" });
|
||||
eleventyConfig.addPassthroughCopy({ "shared/theme-hub.css": "theme.css" });
|
||||
eleventyConfig.addPassthroughCopy({ "shared/favicon/hub.svg": "favicon.svg" });
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "Stefan Kölle"
|
||||
title: "Stefan Koelle"
|
||||
description: "Experienced Senior Software Developer and Software Architect with over 20 years of experience. Specialized in .NET and Kubernetes, with hands-on experience in AI-assisted development using Claude Code."
|
||||
layout: stefankoelle.njk
|
||||
---
|
||||
|
||||
@@ -8,7 +8,7 @@ description: "WiFi-controlled LED display solution with REST API, DHT22 sensor,
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="{{ description }}">
|
||||
<meta name="author" content="Stefan Kölle">
|
||||
<meta name="author" content="Stefan Koelle">
|
||||
<link rel="canonical" href="{{ site.url }}{{ page.url }}">
|
||||
<meta property="og:title" content="{{ title }}">
|
||||
<meta property="og:description" content="{{ description }}">
|
||||
@@ -25,7 +25,7 @@ description: "WiFi-controlled LED display solution with REST API, DHT22 sensor,
|
||||
"@type": "Article",
|
||||
"headline": "{{ title }}",
|
||||
"description": "{{ description }}",
|
||||
"author": { "@type": "Person", "name": "Stefan Kölle" },
|
||||
"author": { "@type": "Person", "name": "Stefan Koelle" },
|
||||
"url": "{{ site.url }}{{ page.url }}"
|
||||
}
|
||||
</script>
|
||||
@@ -134,14 +134,14 @@ description: "WiFi-controlled LED display solution with REST API, DHT22 sensor,
|
||||
<div class="feature-icon">📊</div>
|
||||
<div class="feature-text">
|
||||
<h3>Sensor Readings</h3>
|
||||
<p>Live temperature and humidity from the on-board DHT22 sensor, stored in <a href="https://www.moonweb.org/smarthome//homematic-mqtt/">InfluxDB via MQTT</a></p>
|
||||
<p>Live temperature and humidity from the on-board DHT22 sensor, stored in <a href="https://www.moonweb.org/smarthome/homematic-mqtt/">InfluxDB via MQTT</a></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="feature">
|
||||
<div class="feature-icon">🔔</div>
|
||||
<div class="feature-text">
|
||||
<h3>Status Messages</h3>
|
||||
<p>Notifications like "washing machine done" triggered via <a href="https://www.moonweb.org/smarthome//tasmota-energy/">MQTT and Tasmota energy monitoring</a></p>
|
||||
<p>Notifications like "washing machine done" triggered via <a href="https://www.moonweb.org/smarthome/tasmota-energy/">MQTT and Tasmota energy monitoring</a></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="feature">
|
||||
@@ -575,7 +575,7 @@ ESP32 will be restarted (with display shutdown)</pre>
|
||||
</div>
|
||||
<div class="footer-bottom">
|
||||
<p>© 2026 <a href="https://stefankoelle.de/">Stefan Kölle</a>. LED Matrix WebServer v1.08.</p>
|
||||
<p><a href="https://www.moonweb.org//impressum/">Legal Notice & Privacy Policy</a></p>
|
||||
<p>Part of <a href="https://www.moonweb.org/">moonweb.org</a> · <a href="https://www.moonweb.org/smarthome/">More Smart Home Projects</a> · <a href="https://www.moonweb.org/impressum/">Legal Notice & Privacy Policy</a></p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 691 B |
|
After Width: | Height: | Size: 681 B |
|
After Width: | Height: | Size: 732 B |