(unbefriedigend gelöst) dosemu

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
guennid

(unbefriedigend gelöst) dosemu

Beitrag von guennid » 18.11.2017 16:10:02

Ein DOS-Programm (Borland Pascal) läuft nicht unter dosemu/freedos in stretch mit dieser Fehlermeldung:

Code: Alles auswählen

DPMI: Unhandled Exception 0e - Terminating Client
It is likely that dosemu is unstable now and should be rebooted
Loader error (00FF): =&
Hier (1) habe ich sowas gefunden, keine Datumsangabe, keine Ahnung wie aktuell oder unaktuell ie Seite ist:

Code: Alles auswählen

This will happen if your program uses DPMI and you do not have DPMI enabled. Try changing the line

$_dpmi = (off)

in /etc/dosemu.conf to

$_dpmi = (nnnn)
Andere DOS-Programme laufen.

Es gibt hier keine dosemu.conf unter /etc, aber zwei davon, einmal unter /etc/dosemu und die andere unter /etc/dos2emu. Keine Ahnung, ob das relevant ist.

Unter jessie lief Borland Pascal und läuft auch noch.

(1) http://www.tldp.org/HOWTO/DOSEMU-HOWTO-11.html
Zuletzt geändert von guennid am 22.11.2017 21:24:35, insgesamt 1-mal geändert.

Benutzeravatar
Livingston
Beiträge: 1366
Registriert: 04.02.2007 22:52:25
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

Re: dosemu

Beitrag von Livingston » 19.11.2017 12:54:43

Nix in /etc/dosemu oder ~/.dosemu? Dann läuft dosemu wahrscheinlich nur mit den defaults. Wusste gar nicht, dass das ganz ohne config-Dateien überhaupt was Sinnvolles ergibt. Am Besten legst Du dann in Deinem Home-Verzeichnis eine eigene Konfiguration an.

guennid

Re: dosemu

Beitrag von guennid » 19.11.2017 15:13:23

Livingston hat geschrieben:Nix in /etc/dosemu
:?

Ein Verzeichnis ~/.dosemu geibt's auch, aber darin keine dosemu.conf
Im Benutzer-Home gibt es die Datei .dos2emurc dort steht

Code: Alles auswählen

$_dpmi = (0x4000)
. Ich weiß immer noch nicht, ob, bzw. gegenenfalls wie wie mir das Schrauben woran helfen könnte. Wär' mir schon wichtig. Die mit pascal gebauten einenen DOS-Programme laufen bisher. Aber ohne Änderungs-/Optimierungsmöglichkeit ist das nicht so pralle.

Grüße, Günther

Benutzeravatar
Livingston
Beiträge: 1366
Registriert: 04.02.2007 22:52:25
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

Re: dosemu

Beitrag von Livingston » 19.11.2017 15:34:45

Ich muss gestehen, dass ich dosemu lange nicht mehr angerührt habe. Für meine DOS-Anwendungen schnappe ich mir normalerweise Virtualbox, installier da ein DOS rein (z.B. Freedos oder ein altes MS-DOS aus der Grabbelkiste) und gut is.
Vieleicht kennt sich wer anders hier besser mit den DPMI-Einsellungen aus.

guennid

Re: dosemu

Beitrag von guennid » 19.11.2017 15:39:47

Für meine DOS-Anwendungen schnappe ich mir normalerweise Virtualbox, installier da ein DOS rein [...] und gut is.
Na ja! :wink:

An einen Versuch mit VB habe ich auch schon gedacht, scheue aber den Aufwand bei diesem sperrigen Teil, zumal es bis jessie keine Probleme mit dosemu gab.

TuxPeter
Beiträge: 1954
Registriert: 19.11.2008 20:39:02
Lizenz eigener Beiträge: MIT Lizenz

Re: dosemu

Beitrag von TuxPeter » 19.11.2017 17:05:50

Hier geht Dosemu unter Stretch oob. Die Config-Files befinden sich alle unter /etc/dosemu, direkt unter /etc habe ich keine gefunden, ich musste sie nie anrühren. Auch unter $HOME gibt es keine, außer natürlich den virtuellen DOS-Laufwerken.
Turbo.exe läuft wie unter native DOS, ebenso tpc oder die compilierten Programme. Ausnahmen: sound / nosound sowie delay funktionieren nicht bzw nicht richtig.

Vielleicht wäre es eine Lösung, dosemu mal komplett zu purgen und neu zu installieren.

guennid

Re: dosemu

Beitrag von guennid » 19.11.2017 17:19:08

Ich habe es schon auf unterschiedlichen stretch-Maschinen und frisch installiertem dosemu versucht. Jedesmal das gleiche mit bp.exe, letztlich segmentation fault.

Ich hatte bis jessie das hier in einem Start-Script für dosemu/freedos stehen:

Code: Alles auswählen

echo 0 > /proc/sys/vm/mmap_min_addr
aber auch wenn ich das unter stretch rausnehme, stürzt DOS ab.

Grüße, Günther

PS @TuxPeter: ich bin damals nicht auf das Angebot eingegangen, weil mir das angesichts meiner beschränkten Kenntnisse zu sehr Einbahnstraße zu meinen Gunsten geworden wäre.

atarixle
Beiträge: 341
Registriert: 20.02.2006 19:30:37

Re: dosemu

Beitrag von atarixle » 20.11.2017 10:25:58

Wie wäre es mit DOSBox?

Und nicht scheuen, die DOSBox die CPU emulieren zu lassen, das macht DOSEMU auf 64-Bit-Systemen ohnehin.

TuxPeter
Beiträge: 1954
Registriert: 19.11.2008 20:39:02
Lizenz eigener Beiträge: MIT Lizenz

Re: dosemu

Beitrag von TuxPeter » 20.11.2017 17:21:54

Dass Turbo bei mir problemlos läuft, könnte evtl. auch daran liegen, dass ich noch tp 5.0 habe. Deines ist höher? Ab 5.5 erfolgte ja der Einstieg in die Objektorientierung, evtl. sind da bereits erweiterte HW-Eigenschaften benutzt worden. Ansonsten: /usr/bin/dosemu ist ein script. dosemu.bin im gleichen Verz. läuft bei mir aber genauso gut. Wäre jetzt ja keine Lösung, aber vielleicht eine Erklärung. Und unter Umständen sind deine Progs ja tp 5.0 - compatibel.

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: dosemu

Beitrag von tobo » 20.11.2017 18:25:30

guennid hat geschrieben: ↑ zum Beitrag ↑
19.11.2017 15:13:23
Wär' mir schon wichtig. Die mit pascal gebauten einenen DOS-Programme laufen bisher. Aber ohne Änderungs-/Optimierungsmöglichkeit ist das nicht so pralle.
Geht's dir jetzt primär darum, dass turbo.exe/bp.exe unter einer DOS-Umgebung läuft oder dass die darunter erzeugten Programme (veränderbar) laufen? Für den zweiten Fall böte sich free pascal mit Compiler-Schalter -mTP an!?

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: dosemu

Beitrag von MSfree » 20.11.2017 19:11:14

guennid hat geschrieben: ↑ zum Beitrag ↑
18.11.2017 16:10:02
Ein DOS-Programm (Borland Pascal) läuft nicht unter dosemu/freedos in stretch mit dieser Fehlermeldung:

Code: Alles auswählen

DPMI: Unhandled Exception 0e - Terminating Client
It is likely that dosemu is unstable now and should be rebooted
Loader error (00FF): =&
Unter jessie lief Borland Pascal und läuft auch noch.
Es gab da in den Pascal-Bibliotheken mal einen Fehler, der vor allem bei "schnellen" Computern aufgetreten ist und in einer Division durch Null resultierte, sieh hier:

http://www.muenster.de/~m-frost/error.html

Hast du mal probiert, mit den korrigierten Libs aus dem o.g. Link zu arbeiten?

guennid

Re: dosemu

Beitrag von guennid » 21.11.2017 09:19:19

Danke für alle Hinweise!

Die korrigierten Libs werde ich ausprobieren, obwohl ich vorerst skeptisch bin, weil ich ja trotz meiner Vorliebe für Altes :wink: auch jessie bereits auf Rechnern > 200Mhz betrieb.
Ich liebe Web-Seiten, aus denen nicht klar wird, wann sie zuletzt bearbeitet wurden. :evil:

Sollte das auch nicht funktionieren, werde ich mir mal ein Standard-Stretch installieren, mag ja durchaus sein, dass meine von mir letztlich nicht beherrschten Indivudal-Installationen :wink: mit dem Fehler zusammenhängen.

Grüße, Günther

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: dosemu

Beitrag von MSfree » 21.11.2017 10:52:38

guennid hat geschrieben: ↑ zum Beitrag ↑
21.11.2017 09:19:19
Ich liebe Web-Seiten, aus denen nicht klar wird, wann sie zuletzt bearbeitet wurden. :evil:
:mrgreen: das Webseitendesign sagt doch schon alles.

Dieser Timerbug in den Pascalbibliotheken ist aber schon sehr alt, der läßt sich bis auf Turbo Pascal 3.0 (ca. 1983) zurückverfolgen. Manifestiert hat der sich aber erst mit CPUs, die ca. 200MHz getaktet waren, also die ersten Pentium Pro und später die Pentium-1 Pentium-MMX (ca. 1996).

Es ist durchaus möglich, daß die Version von dosemu, die unter Jessie lief, den Div-by-Zero Fehler abgefangen und ignoriert hat, die aktuelle Stretchversion dies aber zum Absturz bringt.

Wenn du Lust hast, kannst du den Quelltext von dosemu in den beiden Versionen aus dem Debianrepository holen und vergleichen. :wink:

guennid

Re: dosemu

Beitrag von guennid » 21.11.2017 19:07:11

MSfree hat geschrieben:Dieser Timerbug in den Pascalbibliotheken ist aber schon sehr alt, der läßt sich bis auf Turbo Pascal 3.0 (ca. 1983) zurückverfolgen. Manifestiert hat der sich aber erst mit CPUs, die ca. 200MHz getaktet waren, also die ersten Pentium Pro und später die Pentium-1 Pentium-MMX (ca. 1996).
Hmm, jetzt wo do's sagst erinnere ich mich dunkel, dass ich da vor über zwanzig Jahren und noch vor meiner Linux-Zeit mal dran rumschrauben musste, danach nie mehr - keine Ahnung mehr, wie ich das damals gemacht habe. Und du glaubst ernsthaft, das könnte mir nun mit stretch im Jahre des Herrn 2017 plötzlich wieder auf die Füße fallen? 8O

bp.exe lässt übrigens Dosemu auch in der Stretch-Standard-Installation mit Speicherzugriffsfehler abstürzen.
Wenn du Lust hast, kannst du den Quelltext von dosemu in den beiden Versionen aus dem Debianrepository holen und vergleichen. :wink:
Keinerlei masochistische Veranlagung.

Grüße, Günther

(edit:) Austausch der Bibliotheken (turbo.tpl und bp.tpl) hilft leider auch nicht. Da werde ich mir wohl ein jessie aufheben müssen.

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: dosemu

Beitrag von MSfree » 21.11.2017 20:12:09

guennid hat geschrieben: ↑ zum Beitrag ↑
21.11.2017 19:07:11
(edit:) Austausch der Bibliotheken (turbo.tpl und bp.tpl) hilft leider auch nicht. Da werde ich mir wohl ein jessie aufheben müssen.
Schade, einen Versuch war es immerhin wert,

Vielleicht solltest du einen Bugreport bei den Entwicklern von dosemu einstellen.

guennid

Re: dosemu

Beitrag von guennid » 21.11.2017 21:06:12

MSfree hat geschrieben:Vielleicht solltest du einen Bugreport bei den Entwicklern von dosemu einstellen
Die Hürden sind für mich zu hoch.

Aber danke für deine Hinweise!

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: dosemu

Beitrag von MSfree » 21.11.2017 22:37:23

Ich habe mich mal bei dosemu.org umgesehen. Die Software ist auf dem Stand von 2007 und hat sich seither praktisch nicht geändert. Ich denke sogar, daß die Stretch- und Jessieversionen völlig identisch sind.

Dosemu benötigt allerdings noch ein "echtes" DOS als Betriebssystem. Hier wird in der Regel freedos verwendet. Eventuell ist ja die aktuellere Version von freedos für den Absturz verantwortlich.

guennid

Re: dosemu

Beitrag von guennid » 22.11.2017 07:47:37

Ich habe mich mal bei dosemu.org umgesehen. Die Software ist auf dem Stand von 2007 und hat sich seither praktisch nicht geändert. Ich denke sogar, daß die Stretch- und Jessieversionen völlig identisch sind.
Sind sie, wenn man den "falschen" :wink: Versionsnummern Glauben schenken darf.

Ich werde mal versuchen, die Jessie-Version von dosemu im Stretch per dpkg zu installieren.

(edit:)
Scheint zu funktionieren! dosemu erfordert zwar einige libs, aber die jessie-Version hat sich nicht gestört an den Stretch-libs und bp.exe bringt dosemu/freedos einstweilen nicht mehr zum Absturz.

Danke für den Denkanstoß! :THX:

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: dosemu

Beitrag von MSfree » 22.11.2017 08:24:35

guennid hat geschrieben: ↑ zum Beitrag ↑
22.11.2017 07:47:37
die jessie-Version hat sich nicht gestört an den Stretch-libs und bp.exe bringt dosemu/freedos einstweilen nicht mehr zum Absturz.
Ich vermute, daß der Austausch von freedos auch ausgereicht hätte. Dann wüßte man nämlich die Ursache und könnte den freedos-Leuten einen Bugreport zukommen lassen. Um Bugs in dosemu scheint sich ja nach 10 Jahren keiner mehr zu kümmern.

guennid

Re: dosemu

Beitrag von guennid » 22.11.2017 08:30:43

MSfree hat geschrieben:Ich vermute, daß der Austausch von freedos auch ausgereicht hätte.
Wie? Ich habe seit Jahren/Jahrzehnten kein freedos mehr unabhängig von dosemu installiert. Ich werd's ausprobieren, das war ja nur ein erster Test und nicht auf der Maschine, auf der ich mit DOS-Anwendungen arbeite.

Und das Geraffel mit Virtualbox möchte ich mir eigentlich nicht antun.

Grüße, Günther

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: dosemu

Beitrag von MSfree » 22.11.2017 08:38:07

guennid hat geschrieben: ↑ zum Beitrag ↑
22.11.2017 08:30:43
Wie? Ich habe seit Jahren/Jahrzehnten kein freedos mehr unabhängig von dosemu installiert.
Ich wäre jetzt davon ausgegangen, daß dosemu und freedos zwei Debianpakete sind, bei denen dosemu einfach abhängig von freedos ist, so daß eine apt-get install dosemu einfach beide Pakete zieht und installiert.

Ich muß dazu aber sagen, daß ich mich mit dosemu bisher nicht wirklich auseinander gesetzt habe. Mein letzter Ausflug in die DOS-Welt war mit dosbox. Das hat allerdings den Vor- und gleichzeitig Nachteil, daß die CPU wie bei qemu emuliert wird. Das macht dosbox einierseits langsamer, was aber bei alten DOS-Programmen, die seinerzeit noch auf 8086 bis 80386 gut liefen, kaum auffällt. Andererseits laufen solche Programme auch auf anderen Architekturen, Win 3.1 auf einem Raspi hat schon etwas ziemlich nerdiges. :mrgreen:

guennid

Re: dosemu

Beitrag von guennid » 22.11.2017 08:51:44

MSfree hat geschrieben:Ich wäre jetzt davon ausgegangen, daß dosemu und freedos zwei Debianpakete sind, bei denen dosemu einfach abhängig von freedos ist, so daß eine apt-get install dosemu einfach beide Pakete zieht und installiert.
Wenn ich recht sehe, war das auch mal so, und wenn ich nochmal recht sehe, dann gibt's kein Debian-Paket freedos. Ich sehe nur die Möglichkeit, das freedos unter /usr/lib/dosemu herauszuisolieren. Aber die dort vorfindliche dosemu-freedos-Verlinkerei-Orgie ist mir zu hoch. :wink:

Grüße, Günther

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: dosemu

Beitrag von MSfree » 22.11.2017 09:05:17

guennid hat geschrieben: ↑ zum Beitrag ↑
22.11.2017 08:51:44
Ich sehe nur die Möglichkeit, das freedos unter /usr/lib/dosemu herauszuisolieren.
So weit ich informiert bin, kann man da auch andere DOSen verwenden. Du hast doch sicher noch ein altes MS-DOS rumliegen, mit dem du dosemu mal ausprobieren könntest. Für eine Test müßte es sogar reichen, nur command.com auszutauschen.

guennid

Re: dosemu

Beitrag von guennid » 22.11.2017 09:24:22

Eine andere Dose möchte ich eigetnlich nicht. Und ein originales MS-Dos? Da müsste ich aber ziemlich in der Krabbelkist wühlen.

Ich probier's mal trotz Link-Orgie. Also: freedos unter /usr/lib/dosemu/ ist ein Link auf das Verzeichnis /usr/lib/dosemu/drive_z, darin steckt u.a. ein Verzeichnis bin. Darin steckt das, von dem ich vermute, dass es die DOS-Binaries sind. Die dortige command.com ist aber wieder ein Link auf die gleichnamige Datei im übergeordneten Verzeichnis, also drive_z. In diesem Verzeichnis befindet sich aber außerdem Genannten wieder ein Verzeichnis dosemu. Ich kopier jetzt mal alles bis auf dieses Verzeichnis (dosemu) aus einem jesssie-dosemu in ein Stretch-/usr/lib/dosemu/drive_z. Mal schauen, was passiert. :wink:

(edit) Hat leider nicht funktioniert. Nach wie vor Speicherzugriffsfehler bei bp.exe. Wenn mir jemand sagt, wie ich dem stretch-dosemu eine ältere freedos-Version verpasse, dann probiere ich das. Ansonsten werde ich mit der dosemu-Version aus jessie in Stretch arbeiten.

guennid

Beitrag von guennid » 22.11.2017 11:30:40

Hier (1) gibt's 'ne englischsprachige Anleitung, wie man dosemu ein separates freedos andrehen können soll, aber ich versteh' sie leider nicht.

Also ich soll mir zwei Dateien herunterladen, ein freedos iso und ein fdboot.img Das freedos iso soll ich auf CD brennen. Ich nehme an nicht als Datei, sondern als Abbild. Aber was soll ich mit dem fdboot.img anfangen?

Dann soll ich zwei Variablen belegen: $_hdimage und $_vbootfloppy. Die genannten Werte sind zu ersetzen durch meine Pfadangaben für das freedos iso und für fdboot.img - richtig soweit?

(1) http://www.linuxgoodies.com/freedos.html

Antworten