http://bugs.winehq.org/show_bug.cgi?id=10534
Summary: Microsoft QuickBasic: winevdm.exe stays in memory Product: Wine Version: 0.9.49. Platform: Other OS/Version: other Status: UNCONFIRMED Severity: normal Priority: P2 Component: wine-misc AssignedTo: wine-bugs@winehq.org ReportedBy: bammzilla@gabriana.com
Clicking on a .BAS file associated with Microsoft QuickBasic does nothing. After this winevdm.exe stays in memory until killed using KDE System Guard.
If the .BAS file is clicked many times hoping for a response, it can result in multiple instances of winevdm.exe in memory.
http://bugs.winehq.org/show_bug.cgi?id=10534
Stefan Dösinger stefandoesinger@gmx.at changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |stefandoesinger@gmx.at
--- Comment #1 from Stefan Dösinger stefandoesinger@gmx.at 2007-11-22 05:50:03 --- I guess the application crashes and doesn't work nor shut down due to that
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #2 from Bamm Gabriana bammzilla@gabriana.com 2007-11-23 06:14:29 --- It's not the application that crashes but Wine's real mode loader.
Dupe of Bug 9178?
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #3 from Austin English austinenglish@gmail.com 2007-11-23 12:12:21 --- Can you please run it in a terminal and attach output?
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #4 from Bamm Gabriana bammzilla@gabriana.com 2007-11-23 17:09:56 ---
Can you please run it in a terminal and attach output?
user@localhost:~/qb/bin$ wine qb.exe sample.bas Warning: unprotecting memory to allow real-mode calls. NULL pointer accesses will no longer be caught.
(hangs until CTRL+C is pressed)
On the other hand, I tried bypassing the error by opening it with wineconsole --backend=user cmd
What I got is:
CMD Version 0.9.49
Z:\home\user\qb\bin> qb sample.bas DOS memory-arena error
The terminal simultaneously gave this error:
fixme:int:DOSVM_Int10Handler Get Font Information - Not Supported fixme:int:DOSVM_Int10Handler Select Active Display Page (0) - Not Supported
I guess the memory error is different from the INT 10 error about the active display page not supported. Perhaps another bug should be filed for that?
http://bugs.winehq.org/show_bug.cgi?id=10534
Marcus Meissner marcus@jet.franken.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |marcus@jet.franken.de
--- Comment #5 from Marcus Meissner marcus@jet.franken.de 2007-11-27 01:50:11 --- I would suggest trying to run DOS programs with DOSBOX or DOSEMU instead of Wine.
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #6 from Bamm Gabriana bammzilla@gabriana.com 2007-11-27 07:56:07 ---
I would suggest trying to run DOS programs with DOSBOX or DOSEMU instead of Wine.
That sounds to me like filing a bug in Firefox and someone replying to use Konqueror instead. :)
Yes there are alternatives, but a bug was filed so it can be fixed. The Wine project also includes the DOS subsystem, which is why it has the winevdm and winedos modules.
There are advantages to having a single program (e.g. Wine) run both DOS and Windows programs. First is that an .EXE extension can either be a DOS or Windows program. CLI people do not understand this need, but GUI people like me need to have an extension mapped to a particular program, so that clicking it would open the associated program. I once downloaded an astronomy software I needed, and not knowing it was DOS-based, double clicked it. Nothing happened. Clicked again and still nothing. KDE System Guard then showed multiple instances of winevdm in memory waiting to be killed. I don't think this is desirable behavior.
Second is that there are Windows programs that are frontends for DOS programs, and if Wine couldn't open the DOS program, will cause the Windows program to hang.
Now, if Wine could only automatically invoke DOSEMU whenever it encounters a DOS program (assuming DOSEMU is installed) and pass on the command, then that would solve my problem of which program to associate the .EXE extension. Additionally, perhaps binfmt should also learn to pass on DOS programs to DOSEMU and Windows programs to Wine. If this is not possible then Wine should fix its DOS support.
http://bugs.winehq.org/show_bug.cgi?id=10534
Bamm Gabriana bammzilla@gabriana.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|wine-misc |wine-dos
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #7 from Marcus Meissner marcus@jet.franken.de 2007-11-28 06:51:34 --- no worries.
DOS mode is just not a first class citizen.
check WINEDEBUG=+int10,+int wine ....
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #8 from Bamm Gabriana bammzilla@gabriana.com 2007-11-29 04:34:38 ---
no worries.
Thanks! Sorry for that.
DOS mode is just not a first class citizen.
I understand. Would it be possible to just copy all the code over from DOSEMU? :)
check WINEDEBUG=+int10,+int wine ....
I end up in a seemingly endless loop, which I had to stop by closing the cmd window, with the Konsole showing the following output:
warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05) warn:int:DOSVM_GetBuiltinHandler int5 not implemented, returning dummy handler trace:int:DOSVM_HardwareInterruptRM builtin interrupt 05 has been invoked (through vector 05)
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #9 from Bamm Gabriana bammzilla@gabriana.com 2007-11-29 04:36:21 --- would it be ok for me to attach the qb.exe file to this bug? It's only 273 KB.
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #10 from Marcus Meissner marcus@jet.franken.de 2007-11-29 04:42:30 --- unless it is in the public domain, DO NOT ATTACH copyright protected binaries.
http://bugs.winehq.org/show_bug.cgi?id=10534
L. Rahyen mail@science.su changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mail@science.su
--- Comment #11 from L. Rahyen mail@science.su 2007-11-29 04:51:40 --- Better idea is to provide a link (in the URL field) where the application can be downloaded.
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #12 from Bamm Gabriana bammzilla@gabriana.com 2007-11-29 07:26:09 --- unfortunately it is neither in the public domain nor is it made available by microsoft for download... however a Google search for "qb45 download" returns several results, the number one result which is the following:
http://muratelic.sitemynet.com/qbasic/qb13.htm
if that is unacceptable, then some tests i made today showed that both qb.exe and qbasic.exe give the same errors. qbasic is a stripped-down version of quickbasic and, being part of win98, is readily available. i suspect that fixing the int10 handler for qbasic would also fix it for quickbasic.
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #13 from Austin English austinenglish@gmail.com 2008-06-03 15:15:26 --- Is this still an issue in 1.0-rc3?
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #14 from Bamm Gabriana bammzilla@gabriana.com 2008-06-03 21:13:23 ---
Is this still an issue in 1.0-rc3?
Oops, I forgot about this bug. I'll get rc3 tonight and test it.
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #15 from Bamm Gabriana bammzilla@gabriana.com 2008-06-04 11:24:17 ---
Is this still an issue in 1.0-rc3?
The error now says:
$ wine qb.exe fixme:int:DOSVM_Int10Handler Get Font Information - Not Supported fixme:int:DOSVM_Int10Handler Select Active Display Page (0) - Not Supported err:int:TIMER_TimerProc DOS timer has been stuck for 60 seconds... $
Running it as WINEDEBUG=+int10,+int wine qb.exe produces the same message as before, found in Comment #8.
http://bugs.winehq.org/show_bug.cgi?id=10534
nathan.n saturn_systems@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |saturn_systems@yahoo.com
http://bugs.winehq.org/show_bug.cgi?id=10534
Jeremiah Flerchinger flerchjj@ieee.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |flerchjj@ieee.org
--- Comment #16 from Jeremiah Flerchinger flerchjj@ieee.org 2009-04-17 19:57:19 --- The newer versions of Wine should output the VGA mode number. Can someone report that? It should be a line or 2 before the "fixme:int:DOSVM_Int10Handler Get Font Information - Not Supported". Also does it bring up a blank window now?
(In reply to comment #6)
There are advantages to having a single program (e.g. Wine) run both DOS and Windows programs.
You forgot Windows programs that call DOS dlls. For that you need something that handles both 32-bit and 16-bit code well. I don't know what will happen when we lose use of vm86, due to 64-bit OSes, and can't run 16-bit apps anymore.
(In reply to comment #8)
I understand. Would it be possible to just copy all the code over from DOSEMU? :)
Is that an offer to figure out how they trap specific address writes with signals and vm86? If reads & writes to A0000-B9999 were trapped in Wine, the int10 and VGA subsystem could be easily fixed.
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #17 from Austin English austinenglish@gmail.com 2009-10-29 15:25:15 --- Is this still an issue in current (1.1.32 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=10534
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |ABANDONED
--- Comment #18 from Austin English austinenglish@gmail.com 2010-04-30 17:08:49 --- No response in over 6 months, marking abandoned. If this is still an issue in current (1.1.43 or newer) wine, and you can provide the needed information, feel free to reopen.
http://bugs.winehq.org/show_bug.cgi?id=10534
--- Comment #19 from Austin English austinenglish@gmail.com 2010-04-30 17:09:07 --- Closing.
http://bugs.winehq.org/show_bug.cgi?id=10534
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #20 from Austin English austinenglish@gmail.com 2010-04-30 17:13:40 --- Really closing.