Menu

#320 [DOSEMU-1.3.3] Failure of DJGPP port of GNU Sed

open
nobody
None
5
2014-04-22
2006-02-11
No

Tried to configure GCC-4.0.2 for target
i586-pc-msdosdjgpp using DJGPP tools under DOSEMU-1.3.3.

Got stuck on the following problem:

GNU Sed edits Makefile.in and write Makefile. This
process fails and Sed writes file up to 2 Gb size and
after that DOSEMU quits with error message

Tested that the same command works without problems in
DOS session under WinXP.

The problem may however be related also with FreeDos.

Executable can be found at:
http://www.delorie.com/djgpp/dl/ofc/current/v2gnu/sed414b.zip/bin/sed.exe

Command:
sed -f foo.sed foo >foo.out

Files except sed.exe (see link above) are in the
attached ZIP archive

System information:
Linux distribution: Fedora Core 4
CPU: Pentium 4
GCC-4.0.2, kernel-2.6.15-1.1831_FC4

PS. LFN seems to work OK


Linux DOS emulator 1.3.3.0 $Date: 2005-12-22$
Last configured at Mon Feb 6 21:40:45 EET 2006 on linux
This is work in progress.
Please test against a recent version before reporting
bugs and problems.
Submit Bug Reports, Patches & New Code to
linux-msdos@vger.kernel.org or via
the SourceForge tracking system at
http://www.sourceforge.net/projects/dosemu

DPMI-Server Version 0.9 installed

FreeDOS kernel version 1.1.35 (Build 2035) [May 30 2004
22:09:36]

Kernel compatibility 7.10 - WATCOMC - FAT32 support

(C) Copyright 1995-2004 Pasquale J. Villani and The
FreeDOS Project.
All Rights Reserved. This is free software and comes
with ABSOLUTELY NO
WARRANTY; you can redistribute it and/or modify it
under the terms of the
GNU General Public License as published by the Free
Software Foundation;
either version 2, or (at your option) any later version.
C: HD1, Pri[ 1], CHS= 0-1-1, start= 0 MB, size=
392 MB
dosemu EMS 4.0 driver installed.
Kernel: allocated 39 Diskbuffers = 20748 Bytes in HMA

FreeCom version 0.82 pl 3 XMS_Swap [Mar 06 2004 10:49:37]

D

Discussion

  • Andris Pavenis

    Andris Pavenis - 2006-02-11

    Test example in ZIP archive

     
  • Stas Sergeev

    Stas Sergeev - 2006-02-11

    Logged In: YES
    user_id=501371

    Looks FreeDOS-specific indeed.
    Try the FreeDOS bugzilla too please.

     
  • Pete

    Pete - 2006-02-24

    Logged In: YES
    user_id=1359396

    Found similar error with standard DPMI programs which ran fine with 1.3.2. Now I get a DPMI error 0d. Freedos works fine with 1.3.2. Seems like it definitely something with 1.3.3.

     
  • Pete

    Pete - 2006-02-24

    Logged In: YES
    user_id=1359396

    Simple DPMI status program under 1.3.2 and freedos-

    FreeDOS kernel version 1.1.35 (Build 2035) [May 30 2004 22:09:36]
    Kernel compatibility 7.10 - WATCOMC - FAT32 support

    C:>xstats

    DPMI extended memory manager detected

    CMOS reports base memory: 640K
    CMOS reports extended memory: 0K

    DPMI Version 0.50

    DPMI Extended memory currently unused: 19456K
    Total physical memory: 20480K

    TopSpeed Extender Version 3.03

    Extended memory available: 16384K
    Low memory available: 0K
    Total memory available: 16384K

    Under 1.3.3

    C:>xstats
    DPMI: Unhandled Exception 0d - Terminating Client
    It is likely that dosemu is unstable now and should be rebooted

    Same with microemacs, and other standard dpmi programs.

    Pretty much a showstopper inasmuch backporting to 1.3.2 works fine.

    Here's the boot log.
    CONF: config variable parser_version_3 set
    CONF: config variable c_system set
    CONF: Parsing built-in dosemu.conf file.
    CONF: config variable version_3_style_used set
    CONF: Parsing built-in global.conf file.
    CONF: config variable version_3_style_used unset
    CONF: config variable version_3_style_used set
    CONF: opened include file /etc/dosemu//dosemu.conf
    CONF: closed include file /etc/dosemu//dosemu.conf
    CONF: opened include file /home/peter/.dosemurc
    CONF: closed include file /home/peter/.dosemurc
    CONF: config variable skip_dosrc set
    CONF: mapping driver = 'auto'
    debug flags: -a+cw
    CONF: Disabling use of pentium timer
    CONF: dosbanner on
    CONF: timer freq=18, update=54925
    CONF: CPU set to 386
    CONF: CPUEMU set to 0 for 386
    CONF: 8192k bytes XMS memory
    CONF: 2048k bytes EMS memory
    CONF: EMS-frame = 0xe400
    CONF: DPMI-Server on (0x5000)
    CONF: DPMI base addr = 0x10000000
    CONF: PM DOS API Translator on
    CONF: No DJGPP NULL deref checks: off
    CONF: dosemu running on _terminal
    CONF: time mode = 'bios'
    SER: directory /var/lock namestub LCK.. binary No
    MOUSE: no device specified, type 0 using internaldriver: yes, emulate3buttons: no baudrate: 0
    CONF: Keyboard-layout keyb-user
    CONF: **** Warning: floppy /dev/fd0 not accessable, disabled
    CONF: fastfloppy = 1
    CONF: IPX support off
    CONF(LPT0) f: (null) c: lpr -l t: 20 port: 0
    CONF(LPT1) f: (null) c: lpr -l -P lpt2 t: 20 port: 0
    CONF(LPT2) f: (null) c: lpr -l -P lpt3 t: 20 port: 0
    CONF: not allowing speaker port access
    CONF: Packet Driver enabled.
    device: /home/peter/.dosemu/drives/c type 4 h: -1 s: -1 t: -1 drive C:
    CONF: config variable c_system unset
    Linux kernel 2.6.15; CPU speed is 2083204000 Hz
    CPU-EMU speed is 2083 MHz
    CONF: mostly running as USER: uid=1000 (cached 1000) gid=100 (cached 100)
    DBG_FD already set
    DOSEMU-1.3.3.0 is coming up on Linux version 2.6.15-gentoo-r1
    CONF: reserving 640Kb at 0x00000 for 'd' (Base DOS memory (first 640K))
    CONF: reserving 48Kb at 0xF4000 for 'r' (Dosemu reserved area)
    CPU: Stack bottom 0xbfb4b000, top 0xbfb60000, esp=0xbfb4e2f0
    major = 136 minor = 0
    CONF: reserving 128Kb at 0xA0000 for 'v' (Video memory)
    CONF: reserving 4Kb at 0xC0000 for 'V' (VGAEMU Video BIOS)
    SERIAL $Header: /cvsroot/dosemu/dosemu/src/base/serial/ser_init.c,v 1.23 2005/08/22 00:05:17 bartoldeman Exp $
    PKT: Cannot allocate TAP device (dynamic): No such file or directory
    CONF: detected layout is "auto"
    CONF: detected alternate layout: (null)
    CONF: reserving 64Kb at 0xE4000 for 'E' (EMS page frame)
    CONF: reserving 140Kb at 0xC1000 for 'U' (Upper Memory Block (UMB, XMS 3.0))
    TIME: using 9154 usec for updating ALRM timer
    leavedos(1|0x1) called - shutting down
    ERROR: slang_keyb_close(): failed to restore keyboard termios settings!

     
  • Stas Sergeev

    Stas Sergeev - 2006-02-24

    Logged In: YES
    user_id=501371

    It would be better to not mix the multiple reports
    in the same bug entry. The original problem have nothing
    to do with an "Unhandled Exception 0d" and is reproduceable
    only on FreeDOS (I tried on a few different doses).
    So, if you have the DPMI problems with 1.3.3, please
    try CVS code, and if the problem is still there - open
    another report and attach your xstats.exe to it.

     
  • Bart Oldeman

    Bart Oldeman - 2007-05-21

    Logged In: YES
    user_id=176505
    Originator: NO

    It is indeed a problem in the FreeDOS kernel.
    What happens is that SED tries to read from the NUL device in raw mode; that only works correctly in cooked mode.
    It is fixed in the FreeDOS kernel CVS now.

     

Log in to post a comment.