Hello, after upgrading dosemu from *-r3 to *-r4, it seems to hang just before accessing the dos drives. I've tried kernel versions 4.12.5, 4.9.34 and 4.4.something, as i suspected the kernel first. Downgrading to *-r3 allows me to play my old dos games. Greetings from Germany, Tom ## emerge --info dosemu: Portage 2.3.6 (python 2.7.12-final-0, default/linux/x86/13.0, gcc-4.9.4, glibc-2.23-r4, 4.12.5-gentoo i686) ================================================================= System Settings ================================================================= System uname: Linux-4.12.5-gentoo-i686-Pentium-R-_Dual-Core_CPU_T4500_@_2.30GHz-with-gentoo-2.3 KiB Mem: 2035212 total, 1550108 free KiB Swap: 2160736 total, 2160736 free Timestamp of repository gentoo: Tue, 15 Aug 2017 07:00:01 +0000 sh bash 4.3_p48-r1 ld GNU ld (Gentoo 2.28 p1.2) 2.28 app-shells/bash: 4.3_p48-r1::gentoo dev-java/java-config: 2.2.0-r3::gentoo dev-lang/perl: 5.24.1-r2::gentoo dev-lang/python: 2.7.12::gentoo, 3.4.5::gentoo dev-util/cmake: 3.7.2::gentoo dev-util/pkgconfig: 0.28-r2::gentoo sys-apps/baselayout: 2.3::gentoo sys-apps/openrc: 0.28::gentoo sys-apps/sandbox: 2.10-r3::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69::gentoo sys-devel/automake: 1.11.6-r1::gentoo, 1.15-r2::gentoo sys-devel/binutils: 2.28-r2::gentoo sys-devel/gcc: 4.9.4::gentoo, 5.4.0-r3::gentoo sys-devel/gcc-config: 1.7.3::gentoo sys-devel/libtool: 2.4.6-r3::gentoo sys-devel/make: 4.2.1::gentoo sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers) sys-libs/glibc: 2.23-r4::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 kde-sunset location: /usr/local/overlay/kde-sunset sync-type: git sync-uri: git://anongit.gentoo.org/proj/kde-sunset.git masters: gentoo ACCEPT_KEYWORDS="x86" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=core2 -pipe -fomit-frame-pointer -fno-stack-protector" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/bind" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-O2 -march=core2 -pipe -fomit-frame-pointer -fno-stack-protector" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -march=core2 -pipe -fomit-frame-pointer -fno-stack-protector" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -march=core2 -pipe -fomit-frame-pointer -fno-stack-protector" GENTOO_MIRRORS="http://ftp.uni-erlangen.de/pub/mirrors/gentoo/" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="X Xaw3d a52 aac acl acpi alsa amr apache2 berkdb bs2b bzip2 cairo cdda cddb cdr cli cracklib crypt css cups curl cxx dbus device-mapper dri dts dv dvd dvdr encode exif extensions extras fam ffmpeg fftw firefox flac flatfile fontconfig fortran ftp gdbm gif gmp gphoto2 gstreamer iconv icu id3tag imagemagick inotify ipc ipv6 javascript jbig jit jpeg jpeg2k kde kpathsea ladspa lame latex lcms libnotify libsoxr lzma mad mbox mikmod mime mmap mms mmx mmxext mng modules mp3 mp4 mpeg ncurses nls nntp nptl nsplugin nss ogg opengl openmp opus pam pcmcia pcre pdf plasma plotutils png postscript qt3support qt4 qt5 raw readline seccomp session snmp sockets speex sse sse2 sse3 ssl ssse3 startup-notification svg syslog sysvipc taglib tcpd theora tiff toolame truetype twolame udev unicode usb vcd vhosts vim-syntax vorbis vpx wavpack webp x264 x265 x86 xattr xft xinetd xml xpm xv xvid zlib" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2 canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" L10N="en" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby21 ruby22" USERLAND="GNU" VIDEO_CARDS="vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON ================================================================= Package Settings ================================================================= app-emulation/dosemu-1.4.1_pre20130107-r4::gentoo was built with the following: USE="X alsa -debug -fluidsynth -gpm -sndfile -svga"
I had the same issue. I was able to fix it by disabling the patch dosemu-1.4.1_pre20130107-ia16-ldflags.patch from being applied.
Portage 2.3.8 (python 3.4.5-final-0, default/linux/x86/13.0, gcc-5.4.0, glibc-2.23-r4, 4.12.12-gentoo i686) ================================================================= System Settings ================================================================= System uname: Linux-4.12.12-gentoo-i686-Intel-R-_Xeon-R-_CPU_E5405_@_2.00GHz-with-gentoo-2.4.1 KiB Mem: 3367644 total, 621900 free KiB Swap: 8008396 total, 8007876 free Timestamp of repository gentoo: Fri, 03 Nov 2017 02:00:01 +0000 Head commit of repository gentoo: df1387eae217481b44a32fd9fe04919def2099f3 sh bash 4.3_p48-r1 ld GNU ld (Gentoo 2.28.1 p1.0) 2.28.1 app-shells/bash: 4.3_p48-r1::gentoo dev-lang/perl: 5.24.3::gentoo dev-lang/python: 2.7.12::gentoo, 3.4.5::gentoo dev-util/cmake: 3.7.2::gentoo dev-util/pkgconfig: 0.28-r2::gentoo sys-apps/baselayout: 2.4.1-r2::gentoo sys-apps/openrc: 0.32.1::gentoo sys-apps/sandbox: 2.10-r3::gentoo sys-devel/autoconf: 2.69::gentoo sys-devel/automake: 1.11.6-r1::gentoo, 1.15-r2::gentoo sys-devel/binutils: 2.28.1::gentoo sys-devel/gcc: 5.4.0-r3::gentoo sys-devel/gcc-config: 1.8-r1::gentoo sys-devel/libtool: 2.4.6-r3::gentoo sys-devel/make: 4.2.1::gentoo sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers) sys-libs/glibc: 2.23-r4::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 local location: /usr/local/portage masters: gentoo priority: 0 ACCEPT_KEYWORDS="x86" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=native -O2 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -march=i686 -pipe" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -march=i686 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -march=i686 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="en_US.utf8" LC_ALL="en_US.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j9" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="acl audit bash-completion berkdb bzip2 cli cracklib crypt cxx dri gdbm graphite iconv icu lzma modules ncurses nls nptl nscd pam pcre perl python readline ruby seccomp session sql ssl syslog tcpd threads unicode vim-pager vim-syntax x86 xattr zlib zsh-completion" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby22" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS ================================================================= Package Settings ================================================================= app-emulation/dosemu-1.4.1_pre20130107-r4::local was built with the following: USE="-X -alsa -debug -fluidsynth -gpm -sndfile -svga" CFLAGS="-march=native -O2 -fomit-frame-pointer -pipe -fstack-protector"
Hello Robert, THX a lot - this really solves the problem. :) @all others having the same problem: Since I haven't found any documentation on how to disable patches from being applied, I've created a user patch file undoing the faulty patch. The following patch needs to be installed under directory: /etc/portage/patches/app-emulation/dosemu/ called: undo-dosemu-1.4.1_pre20130107-ia16-ldflags.patch CU Tom ### snip for bugfix ### --- hangs/Makefile.conf.in.orig 2017-11-04 06:56:28.629018886 +0100 +++ works/Makefile.conf.in 2017-11-04 06:57:14.382104354 +0100 @@ -53,8 +53,6 @@ LDFLAGS:=@LDFLAGS@ ALL_LDFLAGS:=@DOSEMU_LDFLAGS@ ${LDFLAGS} DOSBIN_LDFLAGS:=@DOSBIN_LDFLAGS@ -# flags to "link" 16-bit .com files -IA16_LDFLAGS:=-Wl,-Ttext,0x100,-e,_start16,--oformat,binary -nostdlib -s @IA16_LDFLAGS_EXTRA@ LIBS:=@LIBS@ X_LIBS:=@X_LIBS@ SLANGLIB:=@SLANGLIB@ --- hangs/configure.ac.orig 2017-11-04 06:56:28.632352201 +0100 +++ works/configure.ac 2017-11-04 06:57:14.382104354 +0100 @@ -602,7 +602,6 @@ AC_SUBST(LIBS) AC_SUBST(X_LIBS) AC_SUBST(X_CFLAGS) -AC_SUBST(IA16_LDFLAGS_EXTRA) dnl Create output files. If you add new ones, please do it in order. --- hangs/src/commands/Makefile.orig 2017-11-04 06:56:28.632352201 +0100 +++ works/src/commands/Makefile 2017-11-04 06:57:14.382104354 +0100 @@ -54,11 +54,11 @@ dosbin: $(COM1) $(COM2) $(SYS) $(D)/%.sys: %.o - $(LD) $(ALL_LDFLAGS) $(IA16_LDFLAGS) -o $@ $< + $(LD) $(ALL_LDFLAGS) -Wl,-Ttext,0,-e,_start16,--oformat,binary -nostdlib -s -o $@ $< chmod -x $@ $(D)/%.com: %.o - $(LD) $(ALL_LDFLAGS) $(IA16_LDFLAGS) -o $@ $< + $(LD) $(ALL_LDFLAGS) -Wl,-Ttext,100,-e,_start16,--oformat,binary -nostdlib -s -o $@ $< chmod -x $@ precomp: $(PD)/unix.exe $(PD)/cmdline.exe $(PD)/emumouse.exe \ --- hangs/src/plugin/commands/Makefile.orig 2017-11-04 06:56:28.632352201 +0100 +++ works/src/plugin/commands/Makefile 2017-11-04 06:57:14.382104354 +0100 @@ -55,7 +55,7 @@ ./mkcomstub $(D)/generic.com $@ $(basename $(@F)) $(D)/%.com: %.o - $(LD) $(ALL_LDFLAGS) $(IA16_LDFLAGS) -o $@ $< + $(LD) $(ALL_LDFLAGS) -Wl,-Ttext,0x100,-e,_start16,--oformat,binary -nostdlib -s -o $@ $< chmod -x $@ install: all
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=26a7caea7e40a8bcda903705376cc9209dced9fa commit 26a7caea7e40a8bcda903705376cc9209dced9fa Author: Sergei Trofimovich <slyfox@gentoo.org> AuthorDate: 2017-11-04 10:16:08 +0000 Commit: Sergei Trofimovich <slyfox@gentoo.org> CommitDate: 2017-11-04 10:19:20 +0000 app-emulation/dosemu: unbreak misaligned .sys files, bug #631190 In bug #618366 I've added -no-pie LDFLAGS propagation to 16-bit targets but did not notice dosemu has different varying base addresses for different .com files (and I've overlooked 0-based .sys rules). Specifying wrong base address caused incorrect jump offsets into the final binary. That caused crash and hangup of cdrom.sys driver. This change restores original base addresses. Reported-by: Tom Reported-by: Robert Gill Bug: https://bugs.gentoo.org/631190 Package-Manager: Portage-2.3.13, Repoman-2.3.4 RepoMan-Options: --force ...e20130107-r4.ebuild => dosemu-1.4.1_pre20130107-r5.ebuild} | 0 .../dosemu/files/dosemu-1.4.1_pre20130107-ia16-ldflags.patch | 11 +++++------ 2 files changed, 5 insertions(+), 6 deletions(-)}
Gah, my original patch was complete garbage. I wonder how I've managed to miss different '-Wl,-Ttext,' bases. Restored bases and now dosemu does not hang for me at least on startup and gets to the prompt. Thanks all for the report and quickly nailing down offending patch!