Seite 1 von 1

OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 27.01.2026 20:14
von mega-hz
Ich möchte hier eine ganz andere Programmiersprache mit einem guten Beispiel mal beschreiben:
OpenScad (Freeware)

Mit dieser Software kann man anhand von Befehlen relativ schnell 3D Objekte erstellen, ideal für den 3D-Druck.
Im folgenden Beispiel beschreibe ich, wie man aus einem 1040STF Gehäuse ein Falcon030 Gehäuse zaubern kann.
Hintergrund ist dieser:
Ich habe einen F030 bekommen, bei dem der Vorbesitzer etliches vom Gehäuse abgesägt/gebrochen hat, um das Mainboard in ein 19" Gehäuse zu bekommen.
Da ich den wieder herstellen möchte, habe ich eine STL-Datei vom 1040ST gefunden.
Nun kann man im OpenScad auch STL Dateien importieren, diese ist dann zwar "da", aber nicht editierbar.
Was man aber machen kann, Objekte hinzufügen (addetiv) oder löschen (subtraktiv).

Dazu bin ich folgendermaßen vorgegangen:
Zuerst die 1040er Datei importiert,
Dann eine dünne Platte angelegt und so positioniert, daß die Löcher in der 1040ST Rückwand alle geschlossen sind.

Die beiden Objekte 1040ST und die dünne neue Rückwand dann per union() zusammengefügt.

Danach kommen in einer Difference() Schleife die Objekte, die von den beiden als union() definierten "abgezogen" werden.
Also anstatt ein Rechteck wird ein rechteckiges Loch erzeugt.

hier mal ein paar Bilder die das veranschaulichen:

hier das 1040ST Gehäuse Unterteil mit der (auf Abstand) gezeigten Platte die die Löcher verschliesst.
Screenshot (827).png
Screenshot (827).png (67.12 KiB) 2367 mal betrachtet
dann die Platte auf die richtige Position gesetzt:
Screenshot (828).png
Screenshot (828).png (69.43 KiB) 2367 mal betrachtet
Da kann man sehen, daß die Löcher alle geschlossen sind, aber die Beschriftung nocht sichtbar ist, da diese 1mm heraussteht.

Also habe ich noch eine Platte in 1mm Stärke angelegt und diese genau auf die Schrift gesetzt. (Difference() ) so daß die Schrift auch entfernt wird.

Danach rechteckige Objekte angelegt um die neuen Löcher für Netzbuchse, Netzschalte, Rest, RS232 usw. angelegt und plaziert.
Da auch in der Difference() Schleife, werden diese Objekte auch als Löcher gezeichnet.

Es ist noch viel zutun um das F030 Gehäuse komplett fertigzustellen, aber es geht voran.

So sieht das ganze jetzt aus:
Screenshot (829).png
Screenshot (829).png (26.19 KiB) 2367 mal betrachtet
Und der Code:

Code: Alles auswählen

//-----------------------------
// ATARI Falcon 030 Gehäuse
// Rekontruktion
// basierend auf dem 1040STF
// (C)01/2026 mega-hz
//-----------------------------

$fn = 50;

// NUR HILFSMITTEL!
// F030 Rückwand importieren
translate([70,95,80])
rotate([270,270,0])
    color("Yellow")
import("F:/f030.svg", convexity=3);

//-----------------------------
// Rückwand
//-----------------------------
difference()
{
// 1040 und neue Blank Rückwand zusammenfügen
union()
    {
// 1040STF Unterteil       importieren
    rotate([90,0,0])
    color("White")
    import("D:/3D Drucker Files/Atari1040ST_bottom_full.stl", convexity=3);

   
//Rückwand verschliessen
    translate([15,-0.5,3])
    rotate([90,0,0])
    color("White")
    cube([445,46, 3]);
    }

// dünne Platte um die 1040 Beschriftung zu löschen
    translate([15,0.6,3])
    rotate([90,0,0])
    color("White")
    cube([445,46, 1.1]);


//-----------------------------
// Löcher
//-----------------------------
// Loch Reset Taster
translate(v = [40.75, -5, 11.5])
color("Green")
roundedcube([6.9, 9, 6.9], false, 0.25, "y");

// Loch Kaltgeräte Buchse(1.5mm höher als 1040)
translate(v = [64, -5, 21+1.5])
color("Green")
roundedcube([31.2, 9, 23,4], false, 2.5, "y");

// Loch Netzschalter(1.5mm höher als 1040)
translate(v = [128.8, -5, 28+1.5])
color("Green")
roundedcube([29, 9, 8,4], false, 0.25, "y");

// Loch LAN
translate(v = [138.8-27, 4, 16])
color("Yellow")
rotate([90,0,0])
cylinder(9, d=12);

// Loch Modem
translate(v = [138.8, -5, 9])
color("Yellow")
roundedcube([32.5, 9, 15], false, 0.5, "y");

}

//-----------------------------
// Beschriftungen
//-----------------------------
// Schrift RESET
translate(v = [49, -1, 4])
color("Green")
rotate([90,0,180])
linear_extrude(1)
    text("RESET", font = "Monospac821 BT:style=Bold",size = 2.7);

// Schrift POWER Buchse
translate(v = [86, -1, 18])
color("Green")
rotate([90,0,180])
linear_extrude(1)
    text("POWER", font = "Monospac821 BT:style=Bold",size = 2.7);

// Schrift LAN
translate(v = [114.8, -1, 4])
color("Green")
rotate([90,0,180])
linear_extrude(1)
    text("LAN", font = "Monospac821 BT:style=Bold",size = 2.7);

// Schrift POWER Schalter
translate(v = [158, -1, 39])
color("Green")
rotate([90,0,180])
linear_extrude(1)
    text("0   POWER   1", font = "Monospac821 BT:style=Bold",size = 2.7);

// Schrift RS232
translate(v = [160.8, -1, 4])
color("Green")
rotate([90,0,180])
linear_extrude(1)
    text("RS232", font = "Monospac821 BT:style=Bold",size = 2.7);













// Higher definition curves
$fs = 0.01;

module roundedcube(size = [1, 1, 1], center = false, radius = 0.5, apply_to = "all") {
	// If single value, convert to [x, y, z] vector
	size = (size[0] == undef) ? [size, size, size] : size;

	translate_min = radius;
	translate_xmax = size[0] - radius;
	translate_ymax = size[1] - radius;
	translate_zmax = size[2] - radius;

	diameter = radius * 2;

	module build_point(type = "sphere", rotate = [0, 0, 0]) {
		if (type == "sphere") {
			sphere(r = radius);
		} else if (type == "cylinder") {
			rotate(a = rotate)
			cylinder(h = diameter, r = radius, center = true);
		}
	}

	obj_translate = (center == false) ?
		[0, 0, 0] : [
			-(size[0] / 2),
			-(size[1] / 2),
			-(size[2] / 2)
		];

	translate(v = obj_translate) {
		hull() {
			for (translate_x = [translate_min, translate_xmax]) {
				x_at = (translate_x == translate_min) ? "min" : "max";
				for (translate_y = [translate_min, translate_ymax]) {
					y_at = (translate_y == translate_min) ? "min" : "max";
					for (translate_z = [translate_min, translate_zmax]) {
						z_at = (translate_z == translate_min) ? "min" : "max";

						translate(v = [translate_x, translate_y, translate_z])
						if (
							(apply_to == "all") ||
							(apply_to == "xmin" && x_at == "min") || (apply_to == "xmax" && x_at == "max") ||
							(apply_to == "ymin" && y_at == "min") || (apply_to == "ymax" && y_at == "max") ||
							(apply_to == "zmin" && z_at == "min") || (apply_to == "zmax" && z_at == "max")
						) {
							build_point("sphere");
						} else {
							rotate = 
								(apply_to == "xmin" || apply_to == "xmax" || apply_to == "x") ? [0, 90, 0] : (
								(apply_to == "ymin" || apply_to == "ymax" || apply_to == "y") ? [90, 90, 0] :
								[0, 0, 0]
							);
							build_point("cylinder", rotate);
						}
					}
				}
			}
		}
	}
}
weiteres später

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 27.01.2026 21:17
von patjomki
Top. Brauche auch noch unbedingt zwei Falcon Gehäuse.

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 27.01.2026 23:41
von mega-hz
da kommt noch die Frage für alle auf:
Da die 3.5mm Audio Buchsen nicht so genial sind, wäre es doch klug, glech noch vier Löcher für Chinch-Buchsen zu versehen, oder?

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 27.01.2026 23:44
von patjomki
Für mich nicht. Meine beiden Boards sind unmodifiziert, habe halt nur keine Gehäuse dafür.

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 29.01.2026 21:20
von mega-hz
ok.
Wie wäre es damit:
Die zusätzlichen Löcher für Chinch-Buchsen zum rausbrechen?
Also quasi durch ein Kreuz noch verbunden?

Die Rückwand habe ich in 2 Teile getrennt, um einen Testdruck auf meinem kleinen Drucker machen zu können.
Der linke Teil passt 100%ig,
der rechte musste noch nachgearbeitet werden... ST und F030 Netzteile haben unterschiedliche Höhen!
Ausserdem ist mir die "LAN" Buchse zuerst etwas nach rechts verrutscht (Copy-Paste Fehler)
2. Hälfte druckt grade..
WhatsApp Image 2026-01-29 at 20.36.44.jpeg
WhatsApp Image 2026-01-29 at 20.36.44.jpeg (176.48 KiB) 2238 mal betrachtet
WhatsApp Image 2026-01-29 at 20.59.01.jpeg
WhatsApp Image 2026-01-29 at 20.59.01.jpeg (127.13 KiB) 2238 mal betrachtet
Sollte auch gleich passen...

EDIT:
WhatsApp Image 2026-01-29 at 21.26.59.jpeg
WhatsApp Image 2026-01-29 at 21.26.59.jpeg (160.51 KiB) 2236 mal betrachtet
Passt nun! :-)

Die Audio Buchsen fehlen noch und die seitlichen "STE"-Joysticks..

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 29.01.2026 23:44
von mega-hz
so meinte ich das mit den Chinch-Buchsen...
WhatsApp Image 2026-01-29 at 22.32.08.jpeg
WhatsApp Image 2026-01-29 at 22.32.08.jpeg (60.57 KiB) 2225 mal betrachtet

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 30.01.2026 00:23
von patjomki
Man kann doch wieder Löcher reinbohren, wenn man unbedingt zusätzliche Chinch-Buchsen will.

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 30.01.2026 20:18
von mega-hz
so siehts aber besser aus!
Wenn man die nicht braucht, kann man eine passende Abdeckplatte reinklipsen.
Ähnlich so wie die PBI-Abdeckplatte am XL...

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 30.01.2026 20:41
von patjomki
mega-hz hat geschrieben:
30.01.2026 20:18
Ähnlich so wie die PBI-Abdeckplatte am XL...
Iiiih. :o

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 31.01.2026 21:26
von mega-hz
ok.
2 Modelle sind ja auch kein Problem:

1) 100%ig Original
2) korregiert und mit zusätzlichen Buchsen.

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 31.01.2026 21:56
von patjomki
Eine Version 100%ig Original zusätzlich würde mir gefallen. Wie gesagt, würde zwei davon nehmen.

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 26.02.2026 20:43
von patjomki
mega-hz hat geschrieben:
31.01.2026 21:26
ok.
2 Modelle sind ja auch kein Problem:

1) 100%ig Original
2) korregiert und mit zusätzlichen Buchsen.
Gibt es schon Neuigkeiten?

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 26.02.2026 23:13
von mega-hz
nein, mir fehlen immernoch Fotos mit Abmessungen der STE-Joystick Ports.

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 27.02.2026 11:43
von RhoSigma
Wenn Du noch 1200XL und 800 Gehäuse machst, gibt es bestimmt Abnehmer (außer mir)...

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 27.02.2026 13:00
von patjomki
mega-hz hat geschrieben:
26.02.2026 23:13
nein, mir fehlen immernoch Fotos mit Abmessungen der STE-Joystick Ports.

Oh. Hast Du da schon jemanden, der die zur Verfügung stellt?

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 27.02.2026 17:52
von mega-hz
Leider nicht :-(

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 28.02.2026 00:00
von patjomki
mega-hz hat geschrieben:
27.02.2026 17:52
Leider nicht :-(
Schade. Was benötigst Du denn genau?

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 01.03.2026 11:19
von mega-hz
möglichst gute und grade Fotos von der Seite, gern auch noch mit Zollstock dran!
Auch von der kompletten Seite! Das kann ich dann in den Hintergrund "legen" und die Objekte drüberlegen.

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 01.03.2026 17:08
von patjomki

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 01.03.2026 17:51
von wosch
mega-hz hat geschrieben:
27.02.2026 17:52
Leider nicht :-(
Hi
Hast du meine Mail noch nicht gelesen?
Gruß Wolfgang

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 01.03.2026 18:02
von mega-hz
Doch.
Hab dir auch geantwortet

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 01.03.2026 18:26
von wosch
Ah, musste dich erst aus dem Spam-Ordner befreien :mrgreen:
Dann schauen wir mal weiter.

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 01.03.2026 19:48
von andymanone
mega-hz hat geschrieben:
27.02.2026 17:52
Leider nicht :-(
Bin gerade wieder zurück aus Kempten....

Falls noch benötigt, kann ich morgen mal ein paar STE Joyport-Fotos mit Maßen machen...

Gtx.,
andY

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 01.03.2026 21:15
von mega-hz
gerne!
Je mehr, desto besser!

dieser Link ist schon sehr gut! Danke patjomki !!
https://www.fplanque.com/tech/retro/ata ... e-and-out/

Hier ist auch ein prima Foto von den Ports, aber ich brauche noch Maße wie die Tiefe der Mulde und der Löcher.
f030-IMG_5122 - Kopie.jpeg
f030-IMG_5122 - Kopie.jpeg (318.11 KiB) 515 mal betrachtet
Wenn möglich, bitte auch mal kurz mit dem 1040STE vergleichen, ob die Positionen die gleichen sind!

Re: OpenScad - neues ATARI Falcon 030 Gehäuse entsteht

Verfasst: 02.03.2026 00:21
von mega-hz
Ach wenn möglich, bitte auch noch die rechte Seite mit dem Floppy-Loch fotografieren!

Lieben Dank schonmal!