Autor Thema: AtariX => MagicOnLinux  (Gelesen 18354 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline AndreasKromke

  • Benutzer
  • Beiträge: 143
Re: AtariX => MagicOnLinux
« Antwort #360 am: Sa 31.01.2026, 11:42:41 »
Der NVDI-Patch ist jetzt im Repository gelandet, nebst einer umfangreichen Anleitung. Ich habe ein einfaches Patch-Programm geschrieben, das im "assets"-Ordner liegt. Das muß man compilieren und ausführen, dann erzeugt es aus dem NVDI.PRG ein NVDI_PAT.PRG. Das erschien mir sicherer als die bsdiff/bspatch-Variante, jedenfalls testet es Dateilänge und vorherigen Inhalt.

Das ganze NVDI-Konzept ist mir immer noch ein Rätsel. Der NVDI-Kernel kann nur bestimmte Grafikmodi und schreibt zumindest beim VT52 Byte-weise in den Speicher. Die nachladbaren Treiber enthalten dann wohl die optimierten Varianten oder welche, die der NVDI-Kernel nicht kann. Da gibt es vermutlich einen Haufen Redundanz, z.B. in NVDI.PRG und NVDIDRV1.SYS. Vielleicht ist einiges auch nicht genial, sondern nur historisch gewachsen.

Offline AndreasKromke

  • Benutzer
  • Beiträge: 143
Re: AtariX => MagicOnLinux
« Antwort #361 am: Sa 31.01.2026, 12:41:17 »
Nach dem elenden NVDI-G'lump bin ich jetzt endlich dazu gekommen, Thorstens erweitertes Installation-Script zu übernehmen. Ich habe es teilweise testen können (mit dummy-Aufrufen), hatte aber erstmal Syntax-Fehler, die ich hoffentlich behoben habe.

Jedenfalls wird damit u.a. auch macOS berücksichtigt, weswegen die Anleitung MACOS.txt jetzt möglicherweise nicht mehr korrekt ist, weil teilweise obsolet. Vielleicht kann mal einer von Euch Apple-Jüngern draufschau'n, was da noch paßt.

Und vielleicht entstaube ich auch mal meinen alten Mac und probiere es selber aus. Hat es schon mal jemand mit "Mojave" ausprobiert? Ich weiß nicht mal, ob es eine neuere Xcode-Version gibt als die, die noch drauf ist, und "brew" habe ich auch wenig verwendet. Aber dazu gibt es ja das Internet.

Offline AndreasKromke

  • Benutzer
  • Beiträge: 143
Re: AtariX => MagicOnLinux
« Antwort #362 am: So 01.02.2026, 12:13:08 »
Ich habe jetzt endlich die Zeit gefunden, Thorstens Anti-Phantom-Doppelklick-Patch für Magxdesk einzupflegen. Mir ist immer noch nicht klar, wie es zu dieser Fehlfunktion kommt; vielleicht ist da noch ein Konzeptfehler im AES. Ob das Phänomen auch in anderen Programmen auftritt, weiß ich nicht.

Seltsamerweise hatte ich den Effekt auf meinem eigenen Rechner sehr selten, aber auf einem anderen, wo ich aber wenig testen konnte, ständig; mitunter gingen drei oder mehr Fenster auf. Die Hauptunterschiede zwischen den beiden Rechnern sind, meine ich, daß meiner neuer und damit etwas schneller ist und daß meiner nicht gut mit Wayland läuft, weswegen ich immer noch X11 verwende.

Und ja, es gibt noch andere Unschönigkeiten (Neologismus!) in Magxdesk, z.B. die Anzeige des freien Festspeichers. Wenn wir großzügig einen Speicher mit 20 TB annehmen, brauchen wir 45 Bit für die Anzahl der Bytes. Wenn wir 4k als Blockgröße annehmen, sind das 12 Bit. Damit braucht die Anzahl der Blöcke 33 Bit, wodurch wir in DISKINFO.b_free und DISKINFO.b_total einen Überlauf kriegen. Irgendwie neige ich dazu, eine neue Dcntl()-Funktion einzuführen, die 64-Bit-Werte liefert. Keine Ahnung, wie MiNT das löst, das ist ja neuer.

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.506
Re: AtariX => MagicOnLinux
« Antwort #363 am: So 01.02.2026, 14:59:31 »
b_total und b_free sind Anzahl von Blöcken. Auch auf sehr grossen Festplatten ist es ziemlich unwahrscheinlich, daß das einen 32bit-Wert überschreitet. Allerdings ist dein Fix in xfs_dfree() (https://gitlab.com/AndreasK/magiclinux/-/blame/main/src/HostXFS.cpp?page=3#L2652) falsch, wo die gesamte Festplatten-Grösse auf 31 bit beschränkt wird.

Bei der Multiplikation mit der Blockgrösse kann der Wert natürlich überlaufen, aber dafür sind bereits 64bit-Funktionen vorhanden.

Bei MiNT gibt es Dcntl(FS_USAGE) das 64bit-Werte liefert, allerdings wird das bisher weder vom MagiC-Kernel unterstützt noch von MagXDesk (oder MCMD) verwendet.

Offline AndreasKromke

  • Benutzer
  • Beiträge: 143
Re: AtariX => MagicOnLinux
« Antwort #364 am: Di 03.02.2026, 11:29:40 »
Hat jemand eine Idee, ob und wie man den PureDebugger zum Laufen kriegen könnte? Man muß dann natürlich mit der Auflösung runtergehen, also notfalls im Modus ST-High.

Ich habe sowohl den originalen PD von 1993 ausprobiert als auch einen mit Patch von [http://www.dimitri-junker.de/atari.html]. Die verhalten sich beide gleich. Man kann so leidlich mit Esc die Bildschirme umschalten, und einmal konnte ich auch ein CPU-Fenster sehen, das habe ich aber nie wieder hingekriegt. Ich habe auch keine Erinnerung mehr, ob die unter MagicMac oder MagicMacX liefen. Seltsam ist auch, daß der Debugger auf die Register 0xffff8201/3/d schreibt (physische Bildschirmspeicheradresse). Das kann doch auf dem Mac nie funktioniert haben. Der Patch ändert daran nichts, dabei gibt es doch einen Xbios-Aufruf für solche Schweinereien.

Oder gibt es einen Alternativ-Debugger? Einen, der weniger ins System eingreift? Mir fällt da nur der DB von Atari ein, aber der kann nur Assembler, soweit ich weiß. Ansonsten bleibt nur das mühsame printf-Debugging.

Mit Strg-Q kommt man wieder raus. Blind. Seltsam.
« Letzte Änderung: Di 03.02.2026, 11:35:24 von AndreasKromke »

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.506
Re: AtariX => MagicOnLinux
« Antwort #365 am: Di 03.02.2026, 13:57:57 »
Hat jemand eine Idee, ob und wie man den PureDebugger zum Laufen kriegen könnte? Man muß dann natürlich mit der Auflösung runtergehen, also notfalls im Modus ST-High.

Bei mir läuft er ganz gut. Sogar in höheren Auflösungen (scheinbar ist der Debugger-Bildschirm immer schwarz-weiss). Ist aber auch eine mit den Patches von Dimitri Junker bearbeitete Version, wobei ich leider auch nicht mehr genau weiss welche Patches ich damals aktiviert habe.

Zitat
Ich habe auch keine Erinnerung mehr, ob die unter MagicMac oder MagicMacX

MagicMac hatte ich nie, aber unter MagicPC, oder mit magic.ram in Aranym, lief er nie besonders gut, wenn überhaupt.

Zitat
Der Patch ändert daran nichts, dabei gibt es doch einen Xbios-Aufruf für solche Schweinereien.

Ich meine doch. Soviel ich weiss war einer der patches, vro_cpyfm() zum Umschalten zu benutzen. Es gab sogar meine ich eine Version (p2.prg) die auf 2 Bildschirmen lief.

Zitat
Oder gibt es einen Alternativ-Debugger?

Keinen der auch den Quellcode anzeigen kann. Pure-C verwendet dafür sowieso ein eigenes Format.

Zitat
Ansonsten bleibt nur das mühsame printf-Debugging.

nf_debugprintf funktioniert ein bisschen besser, dann werden die Meldungen wenigstens nicht auf den Bildschirm geschmiert. Ich glaube du hast das bis auf die opcodes in m68kops.c auch schon übernommen in deiner Version.



Offline AndreasKromke

  • Benutzer
  • Beiträge: 143
Re: AtariX => MagicOnLinux
« Antwort #366 am: Di 03.02.2026, 15:40:07 »
Verdammt! Wie kann das sein? Ich hänge mal die von mir ausprobierte Version an. Wenn die bei Dir läuft, müßte ich mal Dein MoL-Binary testen. Bescheuert!

PS: Ich habe auch mal 1920x1008 ausprobiert. Das Ergebnis siehst Du. >:(
« Letzte Änderung: Di 03.02.2026, 15:42:54 von AndreasKromke »

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.506
Re: AtariX => MagicOnLinux
« Antwort #367 am: Di 03.02.2026, 18:08:35 »
Dein PD_1.PRG funktioniert bei mir nur zum Teil. Crasht zwar nicht, aber nach ein paar Aktionen reagiert er nicht mehr auf Klicks. Maus bewegt sich aber noch.

Ich hab dir mal meinen Ordner auf https://tho-otto.de/download/purec.zip abgelegt (komplett mit allem, wer weiss was der da sonst noch so braucht).

Offline AndreasKromke

  • Benutzer
  • Beiträge: 143
Re: AtariX => MagicOnLinux
« Antwort #368 am: Di 03.02.2026, 23:54:50 »
Danke! Das scheint besser zu laufen. Zunächst hatte ich aber den gleichen Fehler wie vorher, dann habe ich den Atari-Speicher von 8 MB auf 14 MB erhöht. Jetzt kann ich den Debugger immerhin direkt starten. Wenn die IDE läuft, muß ich sie erst beenden und dann das Programm in den Debugger laden,sonst hängt sich das System auf. Und der PD.PRG bleibt im Speicher hängen, nach einmaligem Gebrauch muß ich das System neu starten. Aber immerhin. Dann gibt es noch PD.APP, das habe ich nicht ausprobiert.
« Letzte Änderung: Gestern um 00:00:37 von AndreasKromke »

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.506
Re: AtariX => MagicOnLinux
« Antwort #369 am: Gestern um 08:59:45 »
PD.APP ist glaube ich die originale, ungepatchte Version.

Offline AndreasKromke

  • Benutzer
  • Beiträge: 143
Re: AtariX => MagicOnLinux
« Antwort #370 am: Gestern um 10:01:49 »
Danke! Ich habe instinktiv die Datei von 2013 genommen und nicht die von 2011. Es ist schön, einen funktionierenden Debugger zu haben. Beim "printf debugging" kann man natürlich auch einfach das Programm ".TOS" nennen oder es vom MCMD aus starten, damit die Ausgaben im VT52-Fenster erscheinen. Ich werde bei Gelegenheit auch mal testen, ob der Debugger vielleicht besser bei 256 Farben läuft; das "true colour" ist doch ganz schön speicherhungrig. Der Debugger selbst läuft ja eh immer in Schwarzweiß. Das sind halt Relikte von 1987, oder wann der halt rauskam.

Offline AndreasKromke

  • Benutzer
  • Beiträge: 143
Re: AtariX => MagicOnLinux
« Antwort #371 am: Gestern um 23:38:02 »
Ich habe APPLICAT.APP etwas aufgeräumt, mit dem Hauptziel, daß .INF und .DAT beim Wechsel der Sprache nicht mehr ausgetauscht werden, was unpraktikabel war. Die neue Version erkennt man an der neuen Versionsnummer; vorher gab es keine. Die Fenstertitel habe ich auch leicht verändert.

Einige Zeichenketten in der .INF-Datei werden beim ersten Abspeichern mit der neuen Version anglisiert, deshalb läßt sich die Datei dann nicht mehr mit der alten Version lesen. Was dann noch in der Landessprache drinsteht, sollte als Kommentar ignoriert werden -- wenn alles funktioniert.
« Letzte Änderung: Heute um 00:39:27 von AndreasKromke »

Offline don_apple

  • Benutzer
  • Beiträge: 46
Re: AtariX => MagicOnLinux
« Antwort #372 am: Heute um 11:24:21 »
Nach dem elenden NVDI-G'lump bin ich jetzt endlich dazu gekommen, Thorstens erweitertes Installation-Script zu übernehmen. Ich habe es teilweise testen können (mit dummy-Aufrufen), hatte aber erstmal Syntax-Fehler, die ich hoffentlich behoben habe.

Jedenfalls wird damit u.a. auch macOS berücksichtigt, weswegen die Anleitung MACOS.txt jetzt möglicherweise nicht mehr korrekt ist, weil teilweise obsolet. Vielleicht kann mal einer von Euch Apple-Jüngern draufschau'n, was da noch paßt.

Und vielleicht entstaube ich auch mal meinen alten Mac und probiere es selber aus. Hat es schon mal jemand mit "Mojave" ausprobiert? Ich weiß nicht mal, ob es eine neuere Xcode-Version gibt als die, die noch drauf ist, und "brew" habe ich auch wenig verwendet. Aber dazu gibt es ja das Internet.

Vielen Dank das du das erweiterte Installationsscript jetzt übernommen hast (ein Teil der Änderungen stammt übrigens von mir, siehe die Diskussion in https://github.com/th-otto/MagicOnLinux/commit/ac3e87d93387f0f05b01cc76f89c2d162da58382).

Ich hätte da noch einen Verbesserungsvorschlag für die installationsscripte:
da es ja jetzt unterstützung für mehrere Sprachen gibt wäre es vielleicht sinnvoll die Sprache beim Start der installationsscripte auswählbar zu machen, z. B. durch eine Parameterabfrage am Anfang:
INITIAL_LANGUAGE=EN
LANGUAGE="${1:-$INITIAL_LANGUAGE}"
(das bewirkt das wenn als erster Parameter eine Sprache eingegeben wird diese dann alls LANGUAGE gesetzt wird, und falls kein Parameter übergeben wurde wird LANGUAGE auf INITIAL_LANGUAGE gesetzt; das könnte man noch um eine Überprüfung erweitern ob die als Parameter übergeben SPrache auch valide ist)
Die MACOS.TXT Datei werde ich mir bei Gelegenheit mal anschauen und dann ein paar Änderungsvorschläge schicken.

Mit macOS "Mojave" (10.14) wird das glaube ich nicht mehr funktionieren MagiConLinux zu bauen, da die Version schonlange  aus dem offiziellen Support ist und homebrew die deshalb nicht mehr unterstützt (ich habe schon Probleme mit macOS Ventura (13.7.8) da das auch schon aus dem offiziellen Support ist).

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.506
Re: AtariX => MagicOnLinux
« Antwort #373 am: Heute um 12:07:44 »
Zitat
ein Teil der Änderungen stammt übrigens von mir, siehe die Diskussion

Ja, beim letzten Fix hätte ich dich als Autor angeben sollen, sorry. Kann man evtl. in MACOS.txt nachholen.

OS "Mojave" (10.14) wird das glaube ich nicht mehr funktionieren MagiConLinux zu bauen, da die Version schonlange  aus dem offiziellen Support ist und homebrew die deshalb nicht mehr unterstützt

Das Script sollte jetzt auch macports unterstützen. Das benutze ich bei mir unter macOS 10.13 (High Sierra).

Wenn das alles irgendwann nicht mehr gehen sollte, müsste man SDL2 und SDL2_mixer selber bauen. Sollte auch kein Hexenwerk sein, da die auch cmake benutzen.