Autor Thema: AtariX 64bit  (Gelesen 21119 mal)

0 Mitglieder und 2 Gäste betrachten dieses Thema.

Offline tosbombe

  • Benutzer
  • Beiträge: 21
AtariX 64bit
« am: So 16.06.2019, 14:10:23 »
Hi,

AtariX lässt sich spätestens für macOS 10.15 nicht mehr bauen, da 10.15 nur noch 64bit Binaries startet und AtariX noch auf Carbon basiert. Das Carbon Framework gibt es aber meines Wissens nach nicht mehr als 64bit SDK.

Die Rahmenapplikation müsste nach Cocoa portiert werden. Eventuell könnte man das Gerüst gleich in Swift implementieren.

Hat sich schon jemand an einer Aktualisierung versucht?

Grüße
Sven

Offline Lukas Frank

  • Benutzer
  • Beiträge: 13.430
  • fancy Atari Musik anDA Dance "Agare Hinu Harukana"
Re: AtariX 64bit
« Antwort #1 am: So 16.06.2019, 14:31:24 »
Vor dem gleichen Problem stehe ich auch ...

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: AtariX 64bit
« Antwort #2 am: So 16.06.2019, 14:43:33 »
Ja, das Problem ist bekannt.

Zitat
Eventuell könnte man das Gerüst gleich in Swift implementieren.

Schlechte Idee. Abgesehen davon daß ich Swift für ziemlichen Blödsinn halte (was bitte schön kann man in Swift was man nicht auch in anderen Sprachen kann?), würde sich die Applikation dann nicht mehr für älterere MacOS Versionen bauen lassen.

Zitat
Hat sich schon jemand an einer Aktualisierung versucht?

Noch nicht aber ich hatte es mir schonmal angeschaut. Wird nicht trivial, Haupt-Probleme dabei sind der Filesystem-Treiber für das Hostfs (essentiell da der Emulator davon bootet), der momentan mit Carbon-Funktionen implementiert ist die eine ID für das Directory benutzen, da müsste man dann auf komplette Pfadnamen umstellen. Anderes Problem ist daß einige Pointer auch an den geladenen Kernel weitergereicht werden und dann 64bit sind, der Kernel aber sowohl für 32bit als auch für 64bit funktionieren muss (er weiss ja nicht in welchem Emulator er später geladen wird).

Ich bin allerdings auch kein absoluter macOS-Experte, wenn du es dir mal anschauen willst sind meine aktuellen sourcen unter https://github.com/th-otto/MagicMac bzw. https://github.com/th-otto/AtariX

Offline Lukas Frank

  • Benutzer
  • Beiträge: 13.430
  • fancy Atari Musik anDA Dance "Agare Hinu Harukana"
Re: AtariX 64bit
« Antwort #3 am: So 20.10.2019, 19:16:23 »
Habe gerade meinen MacMini auf macOS Catalina geupdatet und alle alten 32-bit Programme gelöscht.

Ich hoffe das irgendwann mal AtariX 64bit fähig wird !?!

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: AtariX 64bit
« Antwort #4 am: So 20.10.2019, 19:25:52 »
Kann ich von meiner Seite aus nicht so bald versprechen (irgendwie zu viele Baustellen im moment ;)

Mir wäre auch wohler wenn ich da Unterstützung von jemandem hätte der sich besser mit macOS auskennt.

Offline tkreutz

  • Benutzer
  • Beiträge: 262
Re: AtariX 64bit
« Antwort #5 am: Mi 23.10.2019, 10:34:40 »
Ja, das Problem ist bekannt.

Zitat
Eventuell könnte man das Gerüst gleich in Swift implementieren.

Schlechte Idee. Abgesehen davon daß ich Swift für ziemlichen Blödsinn halte (was bitte schön kann man in Swift was man nicht auch in anderen Sprachen kann?), würde sich die Applikation dann nicht mehr für älterere MacOS Versionen bauen lassen.


Es ist ja nicht nur die Pflege der Sprache, sondern auch der damit verbundenen Umgebung- und Möglichkeiten.

Objective C und Cocoa sind halt in die Jahre gekommen, gerade auch was die Pflege von Software nach vorne hin angeht. Der aktuelle Trend ist eben auch die Möglichkeit, hybride Apps zu entwickeln und mobile Apps- sowie Desktop Apps zu vereinen. Der User will heute seine Arbeit auf dem Rechner zu Hause anfangen, unterwegs mit dem Smartphone oder Tablet weiter daran arbeiten und im Büro die Arbeit fertigstellen. Ob dieser Trend "gesundheitlich" toll ist, steht natürlich auf einem anderem Blatt. Aber Allways on wird nur schwerlich wieder rückentwickelt werden.

Was die Sprachfeatures angeht, so gibt es doch recht umfangreiche Informationen über neue Features u.a. auf Swift.org. Andere Sprachen haben ähnliche Features schon lange integriert, nur Apple hat lange gebraucht, um seinen Entwicklern hier mal etwas zu bieten. Das ist eben 2019 geliefert worden. Und nachdem die ersten Versionen von Swift einfach Schrott waren, funktioniert es nun langsam.

Natürlich hätte man das auch mit anderen Sprachen haben können. Aber wenn der Hersteller diese nur halbherzig in seine Plattform integriert, ist den Entwicklern ja nicht geholfen.

https://www.hackingwithswift.com/articles/182/whats-new-in-swift-5-1

Ich wundere mich ehrlich gesagt immer über Entwickler, die von Informationen "überrascht" werden, die seit Jahren bekannt sind.

https://www.heise.de/mac-and-i/meldung/macOS-Apple-kuendigt-32-Bit-Apps-OpenGL-und-OpenCL-ab-4068653.html
« Letzte Änderung: Mi 23.10.2019, 10:53:42 von tkreutz »

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: AtariX 64bit
« Antwort #6 am: Mi 23.10.2019, 12:30:51 »
Es ist ja nicht nur Swift, auch alles andere was daran hängt, die komplette GUI müsste neu programmiert werden. Und Swift ist halt auch nur für neuere Systeme verfügbar, womit man dann zwei Applikationen pflegen müsste.

Aber keiner hält dich davon ab das zu portieren ;)


Offline tkreutz

  • Benutzer
  • Beiträge: 262
Re: AtariX 64bit
« Antwort #7 am: Mi 23.10.2019, 13:58:55 »
Es ist ja nicht nur Swift, auch alles andere was daran hängt, die komplette GUI müsste neu programmiert werden. Und Swift ist halt auch nur für neuere Systeme verfügbar, womit man dann zwei Applikationen pflegen müsste.

Aber keiner hält dich davon ab das zu portieren ;)

Ja, leider ist es so. Meiner Meinung nach ist man allerdings besser beraten, sich in so einem Fall eher einer bestehenden Community anzuschließen, anstatt das 23ste Nischenprodukt alleine zu entwickeln.

Gut, MagiC hatte sicher seine Kunden. Aber jede Softwarelösung lebt auch von ihrer Unterstützung. Wem nützt es, das tollste Produkt in Form von Sourcen zu besitzen, wenn keine Unterstützung in Form von reichlich Manpower gefunden werden kann ?

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: AtariX 64bit
« Antwort #8 am: Mi 23.10.2019, 14:55:45 »
Äh, reichlich Manpower? Wo soll die plötzlich herkommen?

Und ich glaub auch nicht, daß sich die Swift-Community plötzlich mit Retro-Systemen wie dem Atari beschäftigen wird. Da hilft nur eins: selber machen.

Offline tkreutz

  • Benutzer
  • Beiträge: 262
Re: AtariX 64bit
« Antwort #9 am: Mi 23.10.2019, 15:20:29 »
Äh, reichlich Manpower? Wo soll die plötzlich herkommen?

Und ich glaub auch nicht, daß sich die Swift-Community plötzlich mit Retro-Systemen wie dem Atari beschäftigen wird. Da hilft nur eins: selber machen.

Das war doch ironisch gemeint  ;) (Mein Irrglaube führte mich zu der Annahme, dass es bei Hatari zahlreiche Unterstützer gäbe) Ja, leider scheint es immer schwieriger zu werden, Unterstützer zu finden. Selber machen - ist natürlich ein Weg.
« Letzte Änderung: Mi 23.10.2019, 15:29:17 von tkreutz »

Offline goetz @ 3rz

  • Benutzer
  • Beiträge: 2.054
Re: AtariX 64bit
« Antwort #10 am: Do 24.10.2019, 19:20:21 »
Kann ich von meiner Seite aus nicht so bald versprechen (irgendwie zu viele Baustellen im moment ;)

Mir wäre auch wohler wenn ich da Unterstützung von jemandem hätte der sich besser mit macOS auskennt.

Ich frag mal Alexander Clauss auf’er CETiK …
Wider dem Signaturspam!

Offline tkreutz

  • Benutzer
  • Beiträge: 262
Re: AtariX 64bit
« Antwort #11 am: Mi 30.10.2019, 14:46:29 »
Hallo Zusammen,

ich hatte auch ein Issue bei Gitlab hierzu eingestellt. Mittlerweile ist eine Antwort vom Maintainer eingetroffen, welche ich dem Forum nicht vorenthalten wollte:

Kopie der Antwort aus Gitlab, wo das Projekt zurzeit liegt:
-----------------------------------------------------------------------------

Daß das Programm mit Catalina nicht läuft, hat wohl zwei Gründe:

Wenn ich mich recht erinnere, wird ein 32-Bit-Programm gebaut. Das Umstellen auf 64 Bit wäre aber machbar.
Der bei weitem komplizierteste Programmteil ist der Umsetzer für die Dateisystem-Aufrufe (Dateien und Ordner lesen und schreiben). Der stammt noch vom „klassischen” Mac OS und lief bis macOS „Mojave” unter Verwendung der Carbon-API. Die gibt es aber nun nicht mehr. Eine Umsetzung wäre ein Neuschreiben.

Ich kann nicht versprechen, daß ich mich um das Problem kümmern kann. Ja, ich habe nicht einmal einen Rechner, auf dem Catalina läuft, ich könnte es also nicht einmal testen. Und die SDL sollte man auch mal austauschen...

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: AtariX 64bit
« Antwort #12 am: Mi 30.10.2019, 16:31:38 »
mein Reden ;)

Offline goetz @ 3rz

  • Benutzer
  • Beiträge: 2.054
Re: AtariX 64bit
« Antwort #13 am: Mi 30.10.2019, 23:20:08 »
Anderes Problem ist daß einige Pointer auch an den geladenen Kernel weitergereicht werden und dann 64bit sind, der Kernel aber sowohl für 32bit als auch für 64bit funktionieren muss (er weiss ja nicht in welchem Emulator er später geladen wird).

Falls du damit meinst, dass die Abhängigkeit darin besteht, auf macOS 32 Bit und macOS 64 Bit funktionieren zu können – wir können da ja eine Umfrage machen, aber macOS ist schon sehr lange 64bittig, und die letzten Mac-Hardwarekisten, die 64 Bit nicht konnten, waren die Core Duo (ohne „2“) von 2006-2007.

Will sagen, auf 32bittiges macOS muss man IMO keine Rücksicht nehmen.
Wider dem Signaturspam!

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: AtariX 64bit
« Antwort #14 am: Do 31.10.2019, 08:18:06 »
Doch, muss man irgendwie. Momentan läuft AtariX ja nur als 32bit-Programm, auch wenn es auf einem 64bit-Prozessor ausgeführt wird. Für das Programm macht es keinen Unterschied, ob es auf macOS-32-Bit oder in der 32-bit-emulation von macOS-64-bit ausgeführt wird. Letztere gibt es dann mit Catalina nicht mehr.

Offline goetz @ 3rz

  • Benutzer
  • Beiträge: 2.054
Re: AtariX 64bit
« Antwort #15 am: Do 31.10.2019, 22:40:35 »
Doch, muss man irgendwie. Momentan läuft AtariX ja nur als 32bit-Programm, auch wenn es auf einem 64bit-Prozessor ausgeführt wird. Für das Programm macht es keinen Unterschied, ob es auf macOS-32-Bit oder in der 32-bit-emulation von macOS-64-bit ausgeführt wird. Letztere gibt es dann mit Catalina nicht mehr.

Okay, ich kapier’s nicht :-)

Ich probier’s mal:

* AtariX ist ein reines 32 Bit-Programm
* Es läuft im 32-Bit-Subsystem bis 10.14
* Ab 10.15 entfällt das 32-Bit-Subsystem
* Seit macOS 10.6 sind alle macOSse 64bittig, seit 10.7 komplett

Ergo muss man doch bei einer Portierung von AtariX auf 64Bit mit entsprechenden An- und Umbauten nicht mehr Rücksicht auf 32bittige macOSse nehmen? Man muss IMO „nur“ den 64-Bit-Teil weiterpflegen, weil der alles seit 10.7, d.h. so grob 2007/2008 abdeckt.

Den 32-Bit-Teil kann so lassen wie er jetzt ist, und ignorieren. Damit bleibt ja „nur“ der Teil, ein Gutteil von AtariX umschreiben zu müssen.
Wider dem Signaturspam!

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: AtariX 64bit
« Antwort #16 am: Fr 01.11.2019, 00:13:06 »
Ja, aber das Problem ist, AtariX besteht im wesentlichen aus zwei Teilen, dem eigentlichen Emulator, der unter macOS läuft, und einem speziell dafür angepassten MagiC-Kernel. Die Anpassung besteht u.a. darin, daß AtariX dem MagiC-Kernel bestimmte Resourcen des Hosts zur Verfügung stellt (z.B. einen Bildschirm-Puffer, in den die Ausgaben erfolgen, Callback-Funktionen für das Dateisystem etc.). Dieses sind dementsprechend teilweise Pointer, die je nach OS entweder 32- oder 64-bit sind. Der MagiC-Kernel ist aber in beiden Fällen der gleiche, da es ja eigentlich nur ein normales Atari-Programm ist.

Dazu kommt noch, daß bis Catalina macOS eigentlich beides gleichzeitig unterstützt, dh. wenn man einmal die 64-bit Anpassung vorgenommen hat, könnte man ein Programm bauen daß sowohl auf 32- als auch auf 64-bit läuft (oder auch für andere Prozessoren wie ppc).

Hoffe das war verständlich, weiss auch nicht wie ich es besser erklären soll;)

Offline tkreutz

  • Benutzer
  • Beiträge: 262
Re: AtariX 64bit
« Antwort #17 am: Fr 01.11.2019, 15:27:40 »
Dazu kommt noch, daß bis Catalina macOS eigentlich beides gleichzeitig unterstützt, dh. wenn man einmal die 64-bit Anpassung vorgenommen hat, könnte man ein Programm bauen daß sowohl auf 32- als auch auf 64-bit läuft (oder auch für andere Prozessoren wie ppc).

Hoffe das war verständlich, weiss auch nicht wie ich es besser erklären soll;)

Worin besteht eigentlich der wesentliche Unterschied z.B. zu anderen Emulatoren wie der Hatari ? - denn dieser läuft ja soweit ich es bisher beobachten konnte ohne Probleme auf dem neuen Catalina.

Ich dachte mir, ich frage einfach mal, da ich gesehen habe, dass Du ja auch irgendwo im Hatari Dev Bereich gelistet bist.
« Letzte Änderung: Fr 01.11.2019, 15:29:28 von tkreutz »

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: AtariX 64bit
« Antwort #18 am: Fr 01.11.2019, 16:54:45 »
Der Unterschied besteht darin, daß Hatari (und auch ARAnyM) problemlos als 64-Bit Programm übersetzt werden können. Auch benötigen die keinen speziellen Kernel, sie laufen mit TOS oder EmuTOS. Die Sourcen von AtariX sind aber schon recht alt, und benutzen Funktionen die es in der 64-bit-Umgebung nicht mehr gibt. Und er funktioniert nur mit dem MagiCMac-Kernel, auch nicht mit MagiC für Atari oder MagicPC


Offline tkreutz

  • Benutzer
  • Beiträge: 262
Re: AtariX 64bit
« Antwort #19 am: Fr 01.11.2019, 20:03:44 »
Der Unterschied besteht darin, daß Hatari (und auch ARAnyM) problemlos als 64-Bit Programm übersetzt werden können. Auch benötigen die keinen speziellen Kernel, sie laufen mit TOS oder EmuTOS. Die Sourcen von AtariX sind aber schon recht alt, und benutzen Funktionen die es in der 64-bit-Umgebung nicht mehr gibt. Und er funktioniert nur mit dem MagiCMac-Kernel, auch nicht mit MagiC für Atari oder MagicPC

Okay, danke.