AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Alles rund um Amiga OS4 selbst

Moderator: OS4Welt-Team

Benutzeravatar
McFly
Beiträge: 851
Registriert: 28. September 2009 09:58
Wohnort: Oberhausen/NRW
Hat sich bedankt: 138 Mal
Danksagung erhalten: 98 Mal
Kontaktdaten:

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von McFly »

habe Dir hier mal meine .bat angehangen, brauchst dann eigentlich nur die Pfade und Namen der .img abändern.
Vielleicht hilft es Dir ja :-)
AOne qemu Start.zip
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
German AMIGA Podcast => GAP
GAP auf Facebook => klick
Benutzeravatar
Cyborg
AmigaOS Entwickler
Beiträge: 3514
Registriert: 28. September 2009 11:10
Hat sich bedankt: 12 Mal
Danksagung erhalten: 34 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von Cyborg »

Es ist wirklich frustrierend ... da bin ich schon Mal einigermaßen motiviert, mir Qemu usw. genauer anzusehen und dann hab ich nur Probleme, die natürlich niemand sonst hat :mad:

1) Ich kann Qemu starten, OS4 von (modifiziertem) CD-Image starten und in ein frisches HD image installieren. Aber ums Verrecken will das fertig installierte System dann nicht starten, sondern läßt Exec abranzen. Ja, Treiber sind alle, wie vorgeschrieben. Lustigerweise funktioniert das fertig installierte HD-Image von jemand anderem einwandfrei. Bisher dachte ich eigentlich, daß ich nicht unbedingt ganz doof bin, aber offensichtlich ...

2) Gut, dann eben mit dem geliehenen Image .. wird eh nur Bastelei und sehr wahrscheinlich kein ernsthafter Anwendungsfall für mich werden. Doch jetzt kann die VM keine Verbindung zu Hosts außerhalb des VM-Netzes (10.0.2.0/24) aufbauen. Den VM-Host (Mac Studio M2) selbst kann ich pingen, aber bei anderen Hosts in meinem lokalen Netz kommt nur Datenmüll bei ping und FTP läuft in Timeout .. Hosts im weiten Internet kann ich so natürlich erst recht nicht erreichen, weil ich meinen DNS ja nicht mal erreiche. Ja, ich habe schon verschiedene Parameter versucht, aber nichts hat was gebracht. Bei allen anderen scheint es auf magische Weise mit "-device rtl8139,netdev=net0 -netdev user,id=net0" sofort zu funktionieren.

WTF!
.. der SysOp hat immer recht :evil:

PGP Schlüssel verfügbar
Maijestro
Beiträge: 401
Registriert: 23. Dezember 2022 15:49
Hat sich bedankt: 137 Mal
Danksagung erhalten: 112 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von Maijestro »

Ich schreibe dir heute Abend wie genau du deine Probleme lösen kannst. Vorweg der Weg über Modifizierte Install.iso ist nicht mehr nötig seit dem Balaton Zoltan BBoot für uns geschrieben hat, es hat auch die Vorteile das 2g Arbeitsspeicher verwendet werden kann und die Maschine insgesamt sehr schnell booten tut.

Welche Maschine verwendest du AmigaOneXe oder Pegasos2 ?

Ich verweise zusätzlich auf meine Installationsanleitung die ich extra dafür geschrieben habe, hoffe das hilft dir etwas.

https://www.amiga-news.de/de/forum/thre ... &BoardID=6
Benutzeravatar
Cyborg
AmigaOS Entwickler
Beiträge: 3514
Registriert: 28. September 2009 11:10
Hat sich bedankt: 12 Mal
Danksagung erhalten: 34 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von Cyborg »

Danke. Das Wichtigste für mich wäre der Netzwerksupport, alles andere interessiert mich an der Emu nicht :D

Ernsthaft, warum meine eigene Installation nicht booten mag (egal ob Peg oder A1) ist zwar mysteriös, aber ich habe ja ein startendes Image (Pegasos) von jemanden bekommen. Daß das Netzwerk bei mir aber nicht will, ist das Hauptproblem, weil ich so nicht an Netzwerktreiber testen/arbeiten kann.

Deine Anleitung habe ich natürlich auch schon zu Rate gezogen, aber die ergab leider nichts, was ich nicht eh schon so gemacht oder versucht hätte.
.. der SysOp hat immer recht :evil:

PGP Schlüssel verfügbar
Maijestro
Beiträge: 401
Registriert: 23. Dezember 2022 15:49
Hat sich bedankt: 137 Mal
Danksagung erhalten: 112 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von Maijestro »

Ok verstehe, da wir identische Hardware haben (Mac Studio M1 Max) sollten wir das Problem gelöst bekommen.

Welche Qemu Version verwendest du ? Fertiges Build oder hast du selber kompiliert?

Es gibt noch eine andere Option um das Netzwerk unter MacOs für den Gast und Qemu verfügbar zu machen und es ist auch etwas genauer. Probier das mal bitte:

Code: Alles auswählen

-device rtl8139,netdev=network01 -netdev vmnet-bridged,id=network01,ifname=name-of-the-host-network-device
Es kann möglich sein das du Qemu als Sudo dann ausführen müsstest. Ansonsten besteht noch die Möglichkeit das ich dir mein Build zu Verfügung stellen kann was alle Abhängigkeiten enthält.

Eine weitere Sache dir mir eingefallen ist das du von https://www.emaculation.com/forum/viewtopic.php?t=8848 das letzte Qemu Intel Build runterladen könntest um das Netzwerk zu testen. Es ist etwas langsamer da es über Rosetta übersetzt wird, aber dient nur zu Testzwecke.

Ich gehe davon aus das du die erste Version deines Treibers (RTL8139) von der Final Edition verwendest und nicht neuere Versionen die mit Update 1 verfügbar waren?

Ich bin mir nicht sicher ob du den Paketmanager Homebrew verwendest darüber könnte man auch Qemu installieren mit allen Abhängigkeiten, wichtig sind auch Pakete wie libvirt.
Benutzeravatar
Cyborg
AmigaOS Entwickler
Beiträge: 3514
Registriert: 28. September 2009 11:10
Hat sich bedankt: 12 Mal
Danksagung erhalten: 34 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von Cyborg »

Danke, vmnet-bridged funktioniert, wie erwartet. Trotzdem sehr mysteriös, daß bei mir das Qemu-interne NAT nicht funktioniert, obwohl es das scheinbar bei allen anderen tut ...
.. der SysOp hat immer recht :evil:

PGP Schlüssel verfügbar
Maijestro
Beiträge: 401
Registriert: 23. Dezember 2022 15:49
Hat sich bedankt: 137 Mal
Danksagung erhalten: 112 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von Maijestro »

@Cyborg

Noch etwas kurz da du keine Informationen preisgeben tust was genau dein vorhaben ist, ist es natürlich auch schwer zu helfen. Es war mit "vmnet" mehr oder weniger Zufall, aber es benutzt auch das von Apple bereitgestellte vmnet framework und sollte viel besser funktionieren als das von Qemu bereitgestellte Tap-Netzwerk. Probleme mit -netdev user können zb. enstehen wenn "libslirp" nicht installiert wurde oder Qemu nicht mit dieser Konfiguration kompiliert wird. Ein Beispiel wie ich derzeit meine Builds Kompiliere:

Code: Alles auswählen

./configure --target-list=ppc-softmmu --disable-dbus-display --enable-slirp --enable-lto --disable-debug-tcg --disable-debug-info --extra-cflags=-flto=full --extra-ldflags=-flto=full --extra-cxxflags=-flto=full --disable-virglrenderer
Ping wird nicht erwartet zu funktionieren. Verbindungen vom Gast ausgehend
sollte funktionieren, aber das Verbinden mit dem Gast von außen funktioniert nicht
ohne Portweiterleitung aufgrund von NAT und ftp will es sich mit den Datenports zurück zum Client verbinden, also wird das auch nicht mit nur -netdev user ohne
den Portweiterleitungsoptionen (und den korrekten Einstellungen des ftp-Clients, um
dem Server mitzuteilen, dass er diese Ports verwenden soll) funktionieren.

Derzeit verwende ich das Tap-Netzwerk und für mich funktioniert es wie auch mit VMNET:

Code: Alles auswählen

-device rtl8139,netdev=en0 -netdev user,id=en0
Portweiterleitung unter Qemu.....in diesen Beispiel wird der Port 9000-9004 weitergeleitet, so ist es auch möglich ZitaFTP unter Qemu/AmigaOs4.1 verwenden zu können.

Code: Alles auswählen

-device rtl8139,netdev=network01 -netdev user,id=network01,hostfwd=tcp::21-:21,hostfwd=tcp::9000-:9000,hostfwd=tcp::9001-:9001,hostfwd=tcp::9002-:9002,hostfwd=tcp::9003-:9003,hostfwd=tcp::9004-:9004
Sollte ebenfalls mit VMNET funktionieren. Ich Verwende keinen FTP-Server, sondern SMB2 unter AmigaOs4.1 indem ich ein Ordner über die Freigabe von MacOs zu verfügung gestellt habe, so wie man das auch auf echte Hardware tut ohne Ports weiterleiten zu müssen und es funktioniert sehr gut und ich kann Daten vom Host zum Gast schicken.

Ansonsten gibt es noch die Möglichkeit über UFAT, Dateien zwischen gast und host teilen zu können, wenn auch beschränkt auf 500 MB. Aber ich weis nicht was genau du vorhast und darum wird das alles wahrscheinlich gar nicht benötigt.
Benutzeravatar
Cyborg
AmigaOS Entwickler
Beiträge: 3514
Registriert: 28. September 2009 11:10
Hat sich bedankt: 12 Mal
Danksagung erhalten: 34 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von Cyborg »

Nun, ich dachte, es wäre klar, was ich vorhabe, nachdem Du mich ja schon mehrmals darum gebeten hast: ich will mich um die Netzwerkprobleme unter Qemu kümmern. Dazu brauche ich aber erstmal eine funktionierende Testumgebung. Da ich mich mit Qemu bisher nicht wirklich beschäftigt habe und meine Zeit doch arg begrenzt ist, wollte ich die nicht mit endlosen Selbstversuchen vergeuden, sondern hab um Hilfe gebeten. Danke nochmals dafür.

Danke auch für Deine weiteren Erläuterungen. Portweiterleitungen usw. sind mir klar, aber werden von mir nicht benötigt. Solange ausgehende Verbindungen klappen, kann ich z.B. meinen Netzwerktreiber debuggen. Für den Datenaustausch nutze ich schon den FAT-USB-Stick-Ansatz. Völlig ausreichend für meine Zwecke.

Ach so, auch eben aus dem Grund, daß ich meine Zeit nicht mit sinnlosem Grundsatzgebastel verbringen wollte, habe ich den pragmatischen Installationsweg über Homebrew gewählt. Das wolltest Du ja auch noch wissen.
.. der SysOp hat immer recht :evil:

PGP Schlüssel verfügbar
Benutzeravatar
IconDesigner
Beiträge: 410
Registriert: 29. Dezember 2016 17:00
Hat sich bedankt: 20 Mal
Danksagung erhalten: 24 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von IconDesigner »

@Cyborg

Es ist erstmal schön, daß Du Dich mit diesen Thema auseinander setzt! :thinking:
Ich habe zwar Linux (Ubuntu Studio 23.10) als Host-System, dürfte im Grunde auf Deinen Apple-M2
bis auf die Bezeichnungen der Pfade stimmen.

Ich Benutze für das Netzwerk die standart QEMU-Netzwerk-config., mit einer kleinen Ausnahme, über DHCP.
Vielleicht kommt Dir das entgegen, bei Deinen Vorhaben.
siehe hier (die Pfade musst Du nach Deinen Bedürfnissen anpassen):

Code: Alles auswählen

sudo qemu-system-ppc64 -L pc-bios -M pegasos2 -cpu 7447 -kernel /home/thomasp/peg2emu/bboot-0.6/bboot -initrd /home/thomasp/peg2emu/Kickstart.zip -m 2048 -object memory-backend-file,id=mem,size=2048,mem-path=/dev/shm/qemu-ram,share=on -vga none -device sm501 -drive if=none,id=cd,file=/home/thomasp/peg2emu/AOS-PRG.iso,format=raw -device ide-cd,drive=cd,bus=ide.1 -drive if=none,id=hd,file=/home/thomasp/peg2emu/peg2hd.img,format=raw -device ide-hd,drive=hd,bus=ide.0 -drive if=none,id=usbstick,file=/dev/sdc -device usb-ehci,id=ehci -device usb-storage,bus=ehci.0,drive=usbstick -drive file=fat:rw:/home/thomasp/qemu-share/,id=exfat,format=raw,if=none -device usb-storage,drive=exfat -drive format=raw,file=/dev/sda -device rtl8139,netdev=tap0 -netdev user,hostfwd=tcp::21-:21,hostfwd=tcp::9000-:9000,hostfwd=tcp::9001-:9001,hostfwd=tcp::9002-:9002,hostfwd=tcp::9003-:9003,hostfwd=tcp::9004-:9004,id=tap0,net=192.168.122.1/22,dhcpstart=192.168.122.5 -rtc base=localtime -serial stdio -display gtk,gl=on,zoom-to-fit=on -full-screen
Ich hoffe dies hilft Dir weiter.
Peg2/G4 1GB Ram, Radeon 9250, 1 TB SSD plus 4 GB HDD und AmigaOS 4.1 FE
A4000D/60-PPC 128 MB Ram, CV-PPC, 4 GB HDD und AmigaOS 3.9 >>>RIP<<<
A4000D/60 64 MB Ram, CV-64, 4 GB HDD und AmigaOS 3.5
WinUAE und AmigaOS 4.1 FE Classic
Qemu auf Linux; 2GB Ram und AmigaOS 4.1 FE für Peg2
Maijestro
Beiträge: 401
Registriert: 23. Dezember 2022 15:49
Hat sich bedankt: 137 Mal
Danksagung erhalten: 112 Mal

Re: AmigaOS 4 mittels Qemu auf einem emulierten Pegasos 2

Beitrag von Maijestro »

@Cyborg

Danke, dass ist wirklich großartig. :thumbsup:

Versuchst du dein RTL1839 Treiber kompatibler zu machen oder geht es in Richtung Virtio-Netzwerktreiber, letztes sollte zukunftsreicherer sein, aber wahrscheinlich sehr viel aufwendiger.

Wenn du irgendetwas brauchst oder etwas Hilfe lass es mich wissen und ich versuche dir zu helfen. Programmieren kann ich aber leider nicht. Übrigens lässt sich mit BBoot auch sehr gut Debuggen über die Serielle Ausgabe.
Antworten