Hi Jim,

as several people reported SIGSEGV / page faults with MINIBOX,
for example MINIBOX PWD or MINIBOX CLEAR, I wondered whether
the crashes are just a symptom of the EMM386 issues discussed
earlier. Or rather: Some VMWARE problem causing problems FOR
EMM386. On which real or virtual hardware are you testing?

C:\>minibox pwd
Exiting due to signal SIGSEGV
Page fault at eip=00003c59, error=0004
eax=000ba7d8 ebx=000ba7a8 ecx=00000007 edx=00000000 esi=00000000 edi=00003bd0
ebp=000ba428 esp=000ba3e0 program=C:\UTIL\MINIBOX\EN\MINIBOX.EXE
cs: sel=00a7  base=00400000  limit=000bffff
ds: sel=00af  base=00400000  limit=000bffff
es: sel=00af  base=00400000  limit=000bffff
fs: sel=008f  base=00022790  limit=0000ffff
gs: sel=00bf  base=00000000  limit=0010ffff
ss: sel=00af  base=00400000  limit=000bffff
App stack: [000ba498..0003a498]  Exceptn stack: [0003a3d4..00038494]

Call frame traceback EIPs:
   0x00003c59

When unpacking the MINIBOX ZIP listed on

https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/test/report.html

I only get a MINIBOX EXE in /unix/minibox/en/ and not /util/minibox/en ?

After fixing the path in bin/minibox dot bat, or by invoking
minibox from the directory where the exe actually is, it does
run without problems in dosemu2. Remember that dosemu2 provides
a DPMI host, which will avoid some risks you get on real hardware:

 - the EMM386 settings may not be stable, but it may take apps
   using EMS or protected mode to actually trigger the crashes

 - the DJGPP go32 DOS extender version used by MINIBOX may have
   some incompatibility with something on your system

 - have you tried loading only HIMEM, or HIMEM + EMM386, or JEMMEX?
   those may offer more stability than loading no drivers at all.

And of course: Has this worked in previous 1.4 release candidates?

If so, it could be another bit of evidence that the problems are
related to recent changes elsewhere in the distro. The LSM say:

JEMM386 5.84 2024-02-12 ==> current release would be 5.85 2025-01-10
HIMEMX 3.38 2022-11-21 (seems current)
MINIBOX 0.7a 2021-01-12 (seems current)
FREECOM 0.85a 2021-07-10 (for wrapper BAT) ==> current 0.86 2024-12-31

It seems unexpected that MINIBOX would have been broken
for 4 years in a row without anybody yet noticing that?

Maybe JEMM386 introduced some incompatible expectations,
or maybe we changed the options used in config/autoexec?

Or maybe the "hardware" (being a virtual machine?) has
changed recently, introducing incompatibilities? I mean
given that EMM386 recently had troubles with VMWARE, it
makes sense to expect troubles for EVERYTHING which is
using protected mode in some way. How about, for example
32-bit games? Archivers? Caches? DoJS? Dosfsck? Setedit?

Regards, Eric



PS: About JEMM 5.85:

 10.01.2025: v5.85
 - fixed: VDS func ax=810Ch: set ZF if disable cnt reaches zero.
 - fixed: VDS: added several argument checks ( mostly DX ).
 - fixed: ISA DMA ports 000A-000F must be handled by Jemm to detect FD accesss
   even if external handler has trapped these ports.
 - fixed: it was assumed that value for TR to be loaded in VCPI function
   ax=DE0Ch ( switch from v86- to protected-mode) had bits 0-2 cleared.
 - linear address region 110000-3FFFFF is now only mapped as far as needed by
   the monitor program.
 - optional kernel-debugger-aware variant calls int 68h for deinitialization.
 - cmdline switch NOVMW added.
 - easier log displays via macro @dprintf.
 - log displays redirected to kernel debugger if one has been detected.
 - buffered output of log displays removed.
 - switch ?SAFEKBD=1 is now default for JemmEx (restores IVT vector 15h before
   reading a key press via int 16h during system errors).
 - JemmDbg renamed to JDeb386 and removed from Jemm source package.
 - building JemmExL.exe removed from Makefile; to create it, use JemmExL.mak.
 - CPUSTAT: optionally displays interrupt redirection bitmap.

And about FREECOM 0.86:

v0.86
    improved build support (fixes, improved makefiles, add TC support to CI)
    add quotes to command line ENV VAR if has space to better handle LFN 
commands
    fix IF "==" incompatibilities
    (version increment to avoid confusion with any prerelease builds)

v0.85b
    fix screen corruption that occurs when performing an editing command that 
clears the command line and the cursor is not at EOL
    fix an error that may overwrite 0x100 of a program when writing command 
line into PSP
    COPY: allow lowercase drive letter for destination
    COPY: Check that target drive exists and if not return the proper error code
    COPY: We shouldn't error if the target argument is a bare drive
    fix sort order when sorting by date AND time AND results compare identical, 
return sort by filename
    fix CTTY suitable for serial terminal via AUX (COMn)
    various NLS updates

Japheth also has an OpenWatcom / JWasm (Masm) version of CauseWay 5.0:
https://github.com/Baron-von-Riedesel/CauseWay





_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to