blob: d12b80a410f3f0724e38b7b6710cdc924301ca35 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
qemu freeze when loading msdos with EMM386.EXE NOEMS HIGHSCAN
Qemu version used : 0.11.2 and 0.14.0
Guest : Ms-Dos 6.2
Host : Ubuntu 10.04 with 2.6.32-29-generic SMP i686
Starting Qemu with command : qemu -hda dos.img -cpu 486 -m 16
When I start msDos under Qemu with the option (in CONFIG.SYS)
DEVICE=C:\DOS\EMM386.EXE NOEMS HIGHSCAN
the guest freeze.
If I remove "HIGHSCAN" system is booting (but my software is not working).
The whole thing is working on a real computer with a 486 with 16Mb ram or a PII.
"HIGHSCAN switch allows EMM386.EXE to map expanded memory pages or upper memory blocks (UMBs) over portions of the upper memory area (UMA) used by system read-only memory " from http://support.microsoft.com/kb/96522/en-us
I add some traces inside "default_ioport_read" in ioport.c, but I don't see any access to F000h-F7FFh like said in ms help.
Before the system hung, there is access to dma1, dma page register and dma2 :
inb : 0087 00
outb: 000c 00
inb : 0000 00
inb : 0000 00
inb : 0001 00
inb : 0001 00
inb : 0083 00
outb: 000c 00
inb : 0002 00
inb : 0002 00
inb : 0003 00
inb : 0003 00
inb : 0081 00
outb: 000c 00
inb : 0004 00
inb : 0004 00
inb : 0005 00
inb : 0005 00
inb : 0082 00
outb: 000c 00
inb : 0006 00
inb : 0006 00
inb : 0007 00
inb : 0007 00
inb : 008b 00
outb: 00d8 00
inb : 00c4 00
inb : 00c4 00
inb : 00c6 00
inb : 00c6 00
inb : 0089 00
outb: 00d8 00
inb : 00c8 00
inb : 00c8 00
inb : 00ca 00
inb : 00ca 00
inb : 008a 00
outb: 00d8 00
inb : 00cc 00
inb : 00cc 00
inb : 00ce 00
inb : 00ce 00
outb: 000c 00
outb: 00d8 00
|