public inbox for linux-msdos@vger.kernel.org
 help / color / mirror / Atom feed
* Newbie with terminal video problems
@ 2002-11-30  3:55 Mushroom
  0 siblings, 0 replies; 8+ messages in thread
From: Mushroom @ 2002-11-30  3:55 UTC (permalink / raw)
  To: linux-msdos

Hi,

I have xdosemu running fine under gnome but experience the mouse click 
problem under kde.

I am attempting to get it running in a terminal and am experiencing some 
difficulties.

When I finish my dos session and type exitemu or attempt to switch terminals 
or back to x I get some kind of weird lock with my monitor going to non 
active mode and my machine inaccessable.

I am running Mandrake 9.0 and the problem occurs both with dosemu 1.1.3.0 
and 1.0.2.1

The graphics card is a nvidia tnt 32Mb as such i have used the plainvga 
setting for unsupported cards.

I have tried lots of settings in the conf file but so far to no avail. 

I have read on one of the old lists that there maybe a bios issue. If this 
is the case can someone tell me what may need changing and what it does I 
have amibios simple setup utility 1.24k (I don't usually even look in there 
as my brother sets up that side of my machine).

Any help would be greatly appreciated.

Any flames for inappropriate newbie behaviour understood.

Paul

PS As an incentive to all my windows me disk is now about 2 programs away 
from becoming a drinks coaster {after I've knicked all the dlls for 
possible use in wine :)}.

-- 
There are only 10 types of people in the world those who understand binary 
and those who don't



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Newbie with terminal video problems
@ 2002-11-30 14:33 Stas Sergeev
  2002-12-01  9:58 ` Mushroom
  0 siblings, 1 reply; 8+ messages in thread
From: Stas Sergeev @ 2002-11-30 14:33 UTC (permalink / raw)
  To: linux-msdos

Hello.

Mushroom wrote:
> or back to x I get some kind of weird lock with my
> monitor going to non active mode and my machine
> inaccessable. I am running Mandrake 9.0 and the problem
> occurs both with dosemu 1.1.3.0
Upgrading to the latest pre-release
of dosemu will most likely fix the
problem, 1.1.3.0 is quite an old.

> The graphics card is a nvidia tnt 32Mb as such i have
> used the plainvga
At least for Radeons this problem was
recently resolved.

> I have read on one of the old lists that there maybe a bios issue. If 
> this is the case can someone tell me what may need changing and what it does 
> I have amibios simple setup utility 1.24k
Video bios is the one that resides in
a ROM of a video card. Your AMIbios setup
utility have nothing to do with video bios.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Newbie with terminal video problems
  2002-11-30 14:33 Stas Sergeev
@ 2002-12-01  9:58 ` Mushroom
  0 siblings, 0 replies; 8+ messages in thread
From: Mushroom @ 2002-12-01  9:58 UTC (permalink / raw)
  To: linux-msdos

Hi,

Thank you for your response

>Stas Sergeev wrote:
>> Mushroom wrote:

>> or back to x I get some kind of weird lock with my
>> monitor going to non active mode and my machine
>> inaccessable. I am running Mandrake 9.0 and the problem
>> occurs both with dosemu 1.1.3.0
> Upgrading to the latest pre-release
> of dosemu will most likely fix the
> problem, 1.1.3.0 is quite an old.
> 
Have just tried applying the combined patchset seemed to go well until:
no rule to make plugin_ioselect.h needed by ioctl.o
Just guessing that this is the kind of reason people like me shouldn't be 
let loose on developers pre-releases.

>> The graphics card is a nvidia tnt 32Mb as such i have
>> used the plainvga
> At least for Radeons this problem was
> recently resolved.
I see that using svgalib has become an option with the later versions this 
may well sort it out.

>> I have read on one of the old lists that there maybe a bios issue. If
>> this is the case can someone tell me what may need changing and what it
>> does I have amibios simple setup utility 1.24k
> Video bios is the one that resides in
> a ROM of a video card. Your AMIbios setup
> utility have nothing to do with video bios.
This one caused hysterics from my brother - sorry the brain transplant is 
long overdue.

Paul



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Newbie with terminal video problems
@ 2002-12-01 12:33 Stas Sergeev
  2002-12-01 16:59 ` Mushroom
  0 siblings, 1 reply; 8+ messages in thread
From: Stas Sergeev @ 2002-12-01 12:33 UTC (permalink / raw)
  To: linux-msdos

Hello.

Mushroom wrote:
> Have just tried applying the combined patchset seemed to go well until:
> no rule to make plugin_ioselect.h needed by ioctl.o
Suppose you haven't performed some
necessary steps (which are minimal
actually): just unpack the 1.1.3
tarball, apply the patchset, execute
./default-configure
make

Anyway, you can just create an empty
plugin_ioselect.h in an src/include
directory of dosemu. It is supposed
to be empty (for now).

> I see that using svgalib has become an option with the later versions 
> this may well sort it out.
Try but don't bet too much on that.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Newbie with terminal video problems
  2002-12-01 12:33 Stas Sergeev
@ 2002-12-01 16:59 ` Mushroom
  0 siblings, 0 replies; 8+ messages in thread
From: Mushroom @ 2002-12-01 16:59 UTC (permalink / raw)
  To: linux-msdos

Hi

>Stas Sergeev wrote:
>> Mushroom wrote:

>> Have just tried applying the combined patchset seemed to go well until:
>> no rule to make plugin_ioselect.h needed by ioctl.o
> Suppose you haven't performed some
> necessary steps (which are minimal
> actually): just unpack the 1.1.3
> tarball, apply the patchset, execute
> ./default-configure
> make

That worked thank you

> Anyway, you can just create an empty
> plugin_ioselect.h in an src/include
> directory of dosemu. It is supposed
> to be empty (for now).

Didn't need to do that it was not tidying things up after myself that caused 
the problems.
 
>> I see that using svgalib has become an option with the later versions
>> this may well sort it out.
> Try but don't bet too much on that.

Yes - the problem remains as it was. I'll try playing with some more 
settings but it doesn't seem promising. BTW the sound which was working 
well in 1.1.3.0 seems partly broken again in 1.1.3.7 (still there but 
horrid!) but that's not something that really concerns me. I am using a 
program with sound purely to access if dosemu is still active after a 
crash.

Paul



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Newbie with terminal video problems
@ 2002-12-01 17:34 Stas Sergeev
  0 siblings, 0 replies; 8+ messages in thread
From: Stas Sergeev @ 2002-12-01 17:34 UTC (permalink / raw)
  To: linux-msdos

Hello.

Mushroom wrote:
> Yes - the problem remains as it was. I'll try playing with some more 
> settings but it doesn't seem promising.
OK, I think all the problems we have
with video, are because dosemu is
trying to POST the video bios not
accordingly the PCI specs.
I intended to introduce a POST-less
video init together with the VESA
support, which is stalled due to some
problems with kernel, but I think
I just can introduce the POST-less
video init code also without a VESA
support, which is rather easy to do.
I'll let you know when if I'll get
the patch ready soon.

> BTW the sound which was working 
> well in 1.1.3.0 seems partly broken again in 1.1.3.7
Fine :-/
Now, when my new sound engine finally
made it in (which was the one of the
top requested features), there will
surely be someone who will call it
broken:)

> but that's not something that really concerns me.
That is important and concerns me.
My sound engine is not perfect overall,
but compared with an old crap, I
don't want to have any drawbacks.
Please open the bug report on dosemu
SourceForge BTS and attach you program
to that report so that I can reproduce
and fix the problem.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Newbie with terminal video problems
@ 2002-12-01 18:37 Stas Sergeev
  2002-12-01 23:47 ` Terminal Video Problem Solved (and sound too!) Mushroom
  0 siblings, 1 reply; 8+ messages in thread
From: Stas Sergeev @ 2002-12-01 18:37 UTC (permalink / raw)
  To: linux-msdos

[-- Attachment #1: Type: text/plain, Size: 412 bytes --]

Hello.

Mushroom wrote:
> Yes - the problem remains as it was. I'll try playing with some more 
> settings but it doesn't seem promising.
OK, try the attached patch.
This is a first pass of the POST-less
video init, which will be used for
the VESA driver in the future, if
someone will finally enlarge an IO
bitmap to 8K in the linux kernel.
If that fixes your problem - we'll
see. If not - you are out of luck.

[-- Attachment #2: post-less_video.diff --]
[-- Type: text/plain, Size: 3921 bytes --]

--- src/include/int.h	Mon Nov  4 02:25:59 2002
+++ src/include/int.h	Sun Dec  1 21:00:13 2002
@@ -15,6 +15,7 @@
 EXTERN void *interrupt_function[0x100];
 EXTERN unsigned int  check_date INIT(0);
 EXTERN time_t        start_time;
+EXTERN char video_ints[256];
 
 void do_int(int);
 void fake_int(int, int);
--- src/base/bios/bios.S	Mon Sep 16 04:14:05 2002
+++ src/base/bios/bios.S	Thu Oct 17 11:08:06 2002
@@ -507,16 +507,9 @@
 	.org	((INT10_SEG-BIOSSEG) << 4)+INT10_OFF
 /* ======================= Addr = F800:4200 (FC200) */
 	pushw	%ax
-	sti
-	movb	$DOS_HELPER_VIDEO_INIT,%al		/*  Start Video init */
-	int	$DOSHELPER_INT
-	.byte	0x9a   /* call far 0xc000:3  or call far 0xe000:3 */
-/* More general than just c000 or e000 ??? */	
-	.globl	CISH(bios_f000_int10ptr)
-CISH(bios_f000_int10ptr):
-	.long	0xc0000003
-	movb	$DOS_HELPER_VIDEO_INIT_DONE,%al		/* Finished video init */
-	int     $DOSHELPER_INT
+	cli
+	movw	$2,%ax
+	int	$0x10
 	popw	%ax
 	sti
 	lret
--- src/base/init/init.c	Sun Sep 29 23:45:30 2002
+++ src/base/init/init.c	Thu Oct 17 09:27:44 2002
@@ -227,6 +228,9 @@
 static inline void map_video_bios(void)
 {
   extern int load_file(char *name, int foffset, char *mstart, int msize);
+  __u32 int_area[256];
+  __u16 seg, off;
+  int i;
 
   v_printf("Mapping VBIOS = %d\n",config.mapped_bios);
 
@@ -252,6 +256,19 @@
 
     memcheck_addtype('V', "Video BIOS");
     memcheck_reserve('V', VBIOS_START, VBIOS_SIZE);
+    load_file("/dev/mem", 0, (char *)int_area, sizeof(int_area));
+    for (i = 0; i < 256; i++) {
+      seg = int_area[i] >> 16;
+      off = int_area[i] & 0xffff;
+      g_printf("int0x%x was 0x%04x:0x%04x\n", i, seg, off);
+      if (seg == VBIOS_START >> 4) {
+	v_printf("Setting int0x%x to 0x%04x:0x%04x\n", i, seg, off);
+	SETIVEC(i, seg, off);
+	video_ints[i] = 1;
+      } else video_ints[i] = 0;
+    }
+    v_printf("Now initialising 0x40:0-ff\n");
+    load_file("/dev/mem", 0x40 << 4, (char *)(0x40 << 4), 0x100);
   }
 }
 
--- src/base/async/int.c	Mon Sep 16 04:15:56 2002
+++ src/base/async/int.c	Wed Oct 23 17:40:24 2002
@@ -2120,7 +2134,7 @@
     interrupt_function[i] = default_interrupt;
 
     /* don't overwrite; these have been set during video init */
-    if(i == 0x1f || i == 0x43) continue;
+    if(video_ints[i]) continue;
 
     /* interrupts >= 0xc0 are scratch (BIOS stack), 
        unless defined by DOSEMU */	
--- src/env/video/vc.c	Sat Sep 21 07:27:17 2002
+++ src/env/video/vc.c	Wed Oct 16 16:49:11 2002
@@ -1139,57 +1139,5 @@
 void 
 install_int_10_handler (void)
 {
-  unsigned char *ptr;
-
-#if 0
-  if (!config.usesX)
-    {
-      /* Wrapper around call to video init c000:0003 */
-      ptr = (u_char *) INT10_ADD;
-
-      *ptr++ = 0x50;		/* push ax          */
-      *ptr++ = 0xfb;		/* start interrupts STI  */
-
-      *ptr++ = 0xb0;
-      *ptr++ = 0x08;		/* mov  al,08  ; Start Video init     */
-
-      *ptr++ = 0xcd;
-      *ptr++ = DOS_HELPER_INT;		/* int  e6          */
-
-      if (config.vbios_seg == 0xe000)
-	{
-	  *ptr++ = 0x9a;
-	  *ptr++ = 0x03;
-	  *ptr++ = 0x00;
-	  *ptr++ = 0x00;
-	  *ptr++ = 0xe0;	/* call e000:0003   */
-	}
-      else
-	{
-	  *ptr++ = 0x9a;
-	  *ptr++ = 0x03;
-	  *ptr++ = 0x00;
-	  *ptr++ = 0x00;
-	  *ptr++ = 0xc0;	/* call c000:0003   */
-	}
-      *ptr++ = 0xb0;
-      *ptr++ = 0x09;		/* move al,09   ; Finished video init    */
-
-      *ptr++ = 0xcd;
-      *ptr++ = DOS_HELPER_INT;		/* int  e6          */
-
-      *ptr++ = 0x58;		/* pop ax           */
-      *ptr++ = 0xfb;		/* start interrupts STI  */
-      *ptr++ = 0xcb;		/* retf             */
-    }
-#else
-  if (config.vbios_seg == 0xe000) {
-    extern void bios_f000_int10ptr();
-    ptr = (u_char *)((BIOSSEG << 4) + ((long)bios_f000_int10ptr - (long)bios_f000));
-    *((long *)ptr) = 0xe0000003;
-    v_printf("VID: new int10 handler at %p\n",ptr);
-  }
-  else
     v_printf("VID: install_int_10_handler: do nothing\n");
-#endif
 }

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Terminal Video Problem Solved (and sound too!)
  2002-12-01 18:37 Newbie with terminal video problems Stas Sergeev
@ 2002-12-01 23:47 ` Mushroom
  0 siblings, 0 replies; 8+ messages in thread
From: Mushroom @ 2002-12-01 23:47 UTC (permalink / raw)
  To: linux-msdos


>Stas Sergeev wrote:
>> Mushroom wrote:

>> Yes - the problem remains as it was. I'll try playing with some more
>> settings but it doesn't seem promising.

> OK, try the attached patch.
> This is a first pass of the POST-less
> video init, which will be used for
> the VESA driver in the future, if
> someone will finally enlarge an IO
> bitmap to 8K in the linux kernel.
> If that fixes your problem - we'll
> see. If not - you are out of luck.

That's fixed it!!!
The graphic card details no longer come up when dosemu starts and vga is 
perfect!
The console is left in video mode but easily readible and clears after going 
to x and back.


>> BTW the sound which was working 
>> well in 1.1.3.0 seems partly broken again in 1.1.3.7
>Fine :-/
>Now, when my new sound engine finally
>made it in (which was the one of the
>top requested features), there will
>surely be someone who will call it
>broken:)

Glad to be of service :)

>> but that's not something that really concerns me.
>That is important and concerns me.
>My sound engine is not perfect overall,
>but compared with an old crap, I
>don't want to have any drawbacks.
>Please open the bug report on dosemu
>SourceForge BTS and attach you program
>to that report so that I can reproduce
>and fix the problem.

After the efforts you have gone to sort me out I thought I'd better do some 
testing of my own. So I had my brother re-build an old 386, put a decent 
soundcard in and try it through my current sound system. Same result.

It is really weird that the old dosemu sound system sounds exactly like 
playing it through some desktop speakers with a nasty soundcard which is as 
I remember it!

I am very sorry for raising concerns it seems that original program did not 
allow for being played through decent equipment.

Many many thanks for your help and I hope that patch assists others in the 
same way.

Paul



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2002-12-01 23:47 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-12-01 18:37 Newbie with terminal video problems Stas Sergeev
2002-12-01 23:47 ` Terminal Video Problem Solved (and sound too!) Mushroom
  -- strict thread matches above, loose matches on Subject: below --
2002-12-01 17:34 Newbie with terminal video problems Stas Sergeev
2002-12-01 12:33 Stas Sergeev
2002-12-01 16:59 ` Mushroom
2002-11-30 14:33 Stas Sergeev
2002-12-01  9:58 ` Mushroom
2002-11-30  3:55 Mushroom

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox