Date: Wed, 28 Jun 2006 16:57:34 +0400 From: asgard <asgard@etersoft.ru> To: hackers@freebsd.org Subject: wine: mapping memory problems Message-ID: <44A27CBE.8060402@etersoft.ru>
next in thread | raw e-mail | index | archive | help
hi, all. in wine project there are few problems on freebsd with windows 16-bits programs. when you'll run such program, wine will crashed with stack overflow. in fact, on freebsd wine doesn't map 1st megabyte of virtual memory, but it should. see ./libs/wine/mmap.c ./dlls/winedos/dosmem.c ./libs/wine/ldt.c in dosmem.c DOSMEM_system should has mapped address, but programs crashes on memset: static void DOSMEM_FillBiosSegments(void) { BYTE *pBiosSys = (BYTE*)DOSMEM_dosmem + 0xf0000; BYTE *pBiosROMTable = pBiosSys+0xe6f5; BIOSDATA *pBiosData = DOSVM_BiosData(); /* in this case *pBiosData = (BIOSDATA *)(DOSMEM_sysmem + 0x400);*/ static const char bios_date[] = "13/01/99"; /* Clear all unused values */ memset( pBiosData, 0, sizeof(*pBiosData) ); /* !!crashes here!! */ /* ... */ have you any suggestions how to resolve this problem? beforehand 10x for help.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44A27CBE.8060402>