|
|
Subject: Re: testing with `score' again - msg#00027
List: emulators.bochs.devel
> Score is built with MSC 5, a compiler version that is rare today.
> Could it be possible that any app that uses floating point and is
> built with MSC 5 would duplicate the problem? If so, working with a
> small application built from source code would be easier.
I'll send another, smaller program of the score suite which shows the
same problem to you privately. Thanks for looking into it.
Werner
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
Was this page helpful?
Thread at a glance:
Previous Message by Date:
click to view message preview
Losing Your Hair? Order Propecia Online for Cheap This Month hmaplqz kaiad tik
Have SEVERE PAIN?
Get SOMA, Ultram, FIORICET, Vicodin
ALL NAME BRAND !
Like to SHED a few pounds?
IONAMIN,ADIPEX,TENUATE,MORE !
NO doctor's appointments - NO previous prescriptions required. Secure Ordering.
Losing Your Hair? Order Propecia Online for Cheap This Month hmaplqz kaiad tik
US physicians and FDA Approved Prescriptions with discreet delivery and packaging
right to your home or office.
We carry one of the largest pharmaceutical inventories on the net today.
W.eight Loss - Women's Health - Men's Health - and more.
Yes we carry V.iagra
Click here for the website
2
u bvuxiohnguzvpsoagj
lrcsw u
iwabrco
Lionel Nava
3
No thanks, please get me off
sa v o sbqy ogav kls x
veozo
Next Message by Date:
click to view message preview
Re: testing with `score' again
[CVS 2003-10-06]
> > Running `score.exe' now gives a completely new error message if
> > run without `set NO87=NO87':
Hehe, a third program of the score suite, draw.exe, produces the
segmentation fault below. This program is quite small so I could
send it to interested persons.
Werner
======================================================================
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 29866)]
0x080e2aae in reg_copy (x=0x811be40, y=0x2) at fpu_emu.h:158
158 y->exp = x->exp;
Current language: auto; currently c
(gdb) bt full
#0 0x080e2aae in reg_copy (x=0x811be40, y=0x2) at fpu_emu.h:158
x = (FPU_REG *) 0x811be40
y = (FPU_REG *) 0x2
#1 0x080e09a7 in FPU_load_int16 (_s=49074, loaded_data=0x2)
at reg_ld_str.c:334
s = 0
negative = 4060
#2 0x080e2d33 in FPU_load_store (type=3 '\003', addr_modes=
{override = {address_size = 0 '\0', operand_size = 0 '\0', segment = 0
'\0'}, default_mode = 1 '\001'}, data_address=49074) at load_store.c:118
type = 3 '\003'
loaded_data = {sigl = 135215840, sigh = 135104448, exp = 971,
alignment1 = 2060, alignment2 = 24224, alignment3 = 2070}
st0_ptr = (FPU_REG *) 0x8161aec
st0_tag = 3 '\003'
loaded_tag = 0 '\0'
#3 0x080df346 in math_emulate (addr_modes=
{override = {address_size = 0 '\0', operand_size = 0 '\0', segment = 0
'\0'}, default_mode = 1 '\001'}, FPU_modrm=70 'F', byte1=223 'ß',
data_address=49074, data_sel_off=
{offset = 49074, selector = 20135, opcode = 0, empty = 0}, entry_sel_off=
{offset = 9798, selector = 2065, opcode = 1862, empty = 0})
at fpu_entry.c:339
FPU_modrm = 70 'F'
byte1 = 223 'ß'
code = 58976
unmasked = -1073748868
loaded_data = {sigl = 1076963158, sigh = 1076963159, exp = -7012,
alignment1 = 49151, alignment2 = 42359, alignment3 = 2056}
st0_ptr = (FPU_REG *) 0x8089734
loaded_tag = 191 '¿'
st0_tag = 255 'ÿ'
#4 0x080de679 in bx_cpu_c::fpu_execute (i=0x81b4968) at wmFPUemu_glue.cc:123
addr_modes = {override = {address_size = 0 '\0',
operand_size = 0 '\0', segment = 0 '\0'}, default_mode = 1 '\001'}
data_address = 49074
data_sel_off = {offset = 49074, selector = 20135, opcode = 0,
empty = 0}
entry_sel_off = {offset = 9798, selector = 2065, opcode = 0, empty = 0}
is_32 = 0
#5 0x080951c7 in bx_cpu_c::ESC7 (i=0x81b4968) at fpu.cc:134
No locals.
#6 0x08088eb3 in bx_cpu_c::cpu_loop (max_instr_count=1) at cpu.cc:304
ret = 1
iStorage = {
ResolveModrm = 0x808c9a0 <bx_cpu_c::Resolve16Mod0Rm6(bxInstruction_c *)>,
execute = 0x80ae8f0 <bx_cpu_c::TEST_EbIb(bxInstruction_c *)>,
metaInfo = 52346882, {modRMForm = {modRMData = 6291462, {Id = 4294967041,
Iw = 65281, Ib = 1 '\001'}, {displ16u = 3386, displ32u = 1089932602}},
IxIxForm = {dummy = 6291462, {Id = 4294967041, Iw = 65281, Ib = 1 '\001'},
{Id2 = 1089932602, Iw2 = 3386, Ib2 = 58 ':'}}, IxForm = {
opcodeReg = 6291462, {Id = 4294967041, Iw = 65281, Ib = 1 '\001'},
dummy = 1089932602}}}
i = (bxInstruction_c *) 0x81b4968
execute = 0x80951b0 <bx_cpu_c::ESC7(bxInstruction_c *)>
#7 0x0806f3ca in bx_begin_simulation (argc=1, argv=0xbffff824) at main.cc:2314
No locals.
#8 0x080d877a in bx_real_sim_c::begin_simulation (this=0x82bbfe8, argc=1,
argv=0xbffff824) at siminterface.cc:751
this = (bx_real_sim_c *) 0x82bbfe8
#9 0x080db357 in bx_config_interface (menu=8) at textconfig.cc:376
prompt = "\0\0\0\0ðÛ,\b\0\0\0\0ìõ\t@$¹\034@
Û,\b\0\0\0\0¸Ú,\b\0\0\0\0PÚ,\bÌæÿ¿$¹\034@$¹\034@À\005\006@\0
\0\0(×,\b\0\0\0\0`Ò,\b\0\0\0\0øÑ,\b\0\0\0\0\002\0\0\0\0\0\0\0
\0\0\0tçÿ¿\t\207\0@\016ù\v@\232\220\003@\0\0\0\0!\204\0@(H\001@xj\0\0øS\001@\027\0\0\0\0\0\002@×\021\n@\001\0\0\0\0\0\002@\0\0\0\0ê\021\n@\0\0\0\0\0\0\0\0_\220\003@®\021\n@ìC\v@!\006\0\0ìd\v@Üá\n@ÀY\001@\a\0\0\0"...
floppyop = {Odevtype = 0x82ca130, Opath = 0x82ca900,
Otype = 0x82ca9c0, Ostatus = 0x82cb190}
cdromop = {Omenu = 0x82cb240, Opresent = 0x82cb2a8, Otype = 0x0,
Omode = 0x402f208, Opath = 0x82c0538, Ojournal = 0x82c3690,
Ocylinders = 0x82c67e8, Oheads = 0x82c9940, Ospt = 0x82bd698,
Ostatus = 0x82c07f0, Omodel = 0x82c3948, Obiosdetect = 0x82c6aa0,
Otranslation = 0x90b0f0e}
choice = 1
#10 0x080db66a in bx_config_interface (menu=1) at textconfig.cc:412
default_choice = 5
prompt = "\0Å+\b\0Å+\b", '\0' <repeats 16 times>,
"Lïÿ¿sÑ\t@\0\225\034@à\220\034@ØA-\b=Ð\t@$¹\034@à\220\034@ØA-\b\0\0\0\0ø\220\034@\0\0\0\0|ïÿ¿»ù\021@ð\224\034@à\220\034@|ïÿ¿£ù\021@\0Å+\b\0Å+\b",
'\0' <repeats 16 times>,
"lôÿ¿®\a\a\bàA-\b\002\0\0\0Àñÿ¿\230ð\021@\0Å+\b\0Å+\b$øÿ¿dï\021@$¹\034@\001\0\0\0\0\0\0\0\\\227\f@\230\237+\b<I+\b\034ðÿ¿\002\024\030@<I+\bh\233+\b\0t*\bìõ\t@$¹\034@"...
floppyop = {Odevtype = 0x401cb924, Opath = 0x82d4370,
Otype = 0x82d4370, Ostatus = 0x40098a1f}
cdromop = {Omenu = 0x400972d0, Opresent = 0x138, Otype = 0x400b23bc,
Omode = 0x40015bb0, Opath = 0xbffff404, Ojournal = 0x40008802,
Ocylinders = 0xbffff35c, Oheads = 0x4011c0fb, Ospt = 0x82d4370,
Ostatus = 0x40008421, Omodel = 0x40014828, Obiosdetect = 0x4011c0dd,
Otranslation = 0x401cb924}
choice = 5
#11 0x080dd99d in ci_callback (userdata=0x0, command=CI_START)
at textconfig.cc:975
No locals.
#12 0x080d8729 in bx_real_sim_c::configuration_interface (this=0x82bbfe8,
ignore=0x80f71a2 "textconfig", command=CI_START) at siminterface.cc:743
this = (bx_real_sim_c *) 0x82bbfe8
ci_param = (bx_param_enum_c *) 0x82cdbf0
name = 0x80f71a2 "textconfig"
retval = 0
#13 0x0806e6ec in bxmain () at main.cc:1785
ci_param = (bx_param_enum_c *) 0x82cdbf0
ci_name = 0x80f71a2 "textconfig"
status = 135524996
context = {{__jmpbuf = {1075624228, 1073827044, -1073743836,
-1073743956, -1073743996, 134669797}, __mask_was_saved = 0,
__saved_mask = {__val = {0 <repeats 32 times>}}}}
#14 0x0806e77b in main (argc=1, argv=0xbffff824) at main.cc:1965
No locals.
#15 0x400c87ee in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
Previous Message by Thread:
click to view message preview
Re: testing with `score' again
--- Werner LEMBERG <wl@xxxxxxx> wrote:
>
> [CVS 2003-10-06]
>
> Running `score.exe' now gives a completely new error message if run
> without `set NO87=NO87':
>
> EMM386 has detected error #16 in an application
> at memory address 1F77:0C7A. To minimize the chance
> of data loss, EMM386 has halted your computer.
> For more information, see the README.TXT file.
>
> To restart your computer, press ENTER.
>
> Tsk, tsk, tsk :-)
>
>
> Werner
>
>
> -------------------------------------------------------
> This sf.net email is sponsored by:ThinkGeek
> Welcome to geek heaven.
> http://thinkgeek.com/sf
> _______________________________________________
> bochs-developers mailing list
> bochs-developers@xxxxxxxxxxxxxxxxxxxxx
> https://lists.sourceforge.net/lists/listinfo/bochs-developers
One thing that makes score.exe difficult to debug is that the
executable is large, and compressed. This kept me from tracing
the successful execution with a commercial processor.
Score is built with MSC 5, a compiler version that is rare today.
Could it be possible that any app that uses floating point and is
built with MSC 5 would duplicate the problem? If so, working with
a small application built from source code would be easier.
Unfortunately, I do not have a copy of MSC 5. But I suspect its
fpu emulation arrangement has something to do with the problem.
16-bit DOS fpu emulators typically activate the emulator code
with a software interrupt instruction, then self-modify the code
to patch in fpu opcodes if an fpu is present. This arrangement
allowed an app to include the emutator, but use the hardware fpu
if present. Except for the first pass through a peice, execution
is at full speed if the fpu is present.
__________________________________
Do you Yahoo!?
The New Yahoo! Shopping - with improved product search
http://shopping.yahoo.com
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
Next Message by Thread:
click to view message preview
Re: testing with `score' again
[CVS 2003-10-06]
> > Running `score.exe' now gives a completely new error message if
> > run without `set NO87=NO87':
Hehe, a third program of the score suite, draw.exe, produces the
segmentation fault below. This program is quite small so I could
send it to interested persons.
Werner
======================================================================
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 29866)]
0x080e2aae in reg_copy (x=0x811be40, y=0x2) at fpu_emu.h:158
158 y->exp = x->exp;
Current language: auto; currently c
(gdb) bt full
#0 0x080e2aae in reg_copy (x=0x811be40, y=0x2) at fpu_emu.h:158
x = (FPU_REG *) 0x811be40
y = (FPU_REG *) 0x2
#1 0x080e09a7 in FPU_load_int16 (_s=49074, loaded_data=0x2)
at reg_ld_str.c:334
s = 0
negative = 4060
#2 0x080e2d33 in FPU_load_store (type=3 '\003', addr_modes=
{override = {address_size = 0 '\0', operand_size = 0 '\0', segment = 0
'\0'}, default_mode = 1 '\001'}, data_address=49074) at load_store.c:118
type = 3 '\003'
loaded_data = {sigl = 135215840, sigh = 135104448, exp = 971,
alignment1 = 2060, alignment2 = 24224, alignment3 = 2070}
st0_ptr = (FPU_REG *) 0x8161aec
st0_tag = 3 '\003'
loaded_tag = 0 '\0'
#3 0x080df346 in math_emulate (addr_modes=
{override = {address_size = 0 '\0', operand_size = 0 '\0', segment = 0
'\0'}, default_mode = 1 '\001'}, FPU_modrm=70 'F', byte1=223 'ß',
data_address=49074, data_sel_off=
{offset = 49074, selector = 20135, opcode = 0, empty = 0}, entry_sel_off=
{offset = 9798, selector = 2065, opcode = 1862, empty = 0})
at fpu_entry.c:339
FPU_modrm = 70 'F'
byte1 = 223 'ß'
code = 58976
unmasked = -1073748868
loaded_data = {sigl = 1076963158, sigh = 1076963159, exp = -7012,
alignment1 = 49151, alignment2 = 42359, alignment3 = 2056}
st0_ptr = (FPU_REG *) 0x8089734
loaded_tag = 191 '¿'
st0_tag = 255 'ÿ'
#4 0x080de679 in bx_cpu_c::fpu_execute (i=0x81b4968) at wmFPUemu_glue.cc:123
addr_modes = {override = {address_size = 0 '\0',
operand_size = 0 '\0', segment = 0 '\0'}, default_mode = 1 '\001'}
data_address = 49074
data_sel_off = {offset = 49074, selector = 20135, opcode = 0,
empty = 0}
entry_sel_off = {offset = 9798, selector = 2065, opcode = 0, empty = 0}
is_32 = 0
#5 0x080951c7 in bx_cpu_c::ESC7 (i=0x81b4968) at fpu.cc:134
No locals.
#6 0x08088eb3 in bx_cpu_c::cpu_loop (max_instr_count=1) at cpu.cc:304
ret = 1
iStorage = {
ResolveModrm = 0x808c9a0 <bx_cpu_c::Resolve16Mod0Rm6(bxInstruction_c *)>,
execute = 0x80ae8f0 <bx_cpu_c::TEST_EbIb(bxInstruction_c *)>,
metaInfo = 52346882, {modRMForm = {modRMData = 6291462, {Id = 4294967041,
Iw = 65281, Ib = 1 '\001'}, {displ16u = 3386, displ32u = 1089932602}},
IxIxForm = {dummy = 6291462, {Id = 4294967041, Iw = 65281, Ib = 1 '\001'},
{Id2 = 1089932602, Iw2 = 3386, Ib2 = 58 ':'}}, IxForm = {
opcodeReg = 6291462, {Id = 4294967041, Iw = 65281, Ib = 1 '\001'},
dummy = 1089932602}}}
i = (bxInstruction_c *) 0x81b4968
execute = 0x80951b0 <bx_cpu_c::ESC7(bxInstruction_c *)>
#7 0x0806f3ca in bx_begin_simulation (argc=1, argv=0xbffff824) at main.cc:2314
No locals.
#8 0x080d877a in bx_real_sim_c::begin_simulation (this=0x82bbfe8, argc=1,
argv=0xbffff824) at siminterface.cc:751
this = (bx_real_sim_c *) 0x82bbfe8
#9 0x080db357 in bx_config_interface (menu=8) at textconfig.cc:376
prompt = "\0\0\0\0ðÛ,\b\0\0\0\0ìõ\t@$¹\034@
Û,\b\0\0\0\0¸Ú,\b\0\0\0\0PÚ,\bÌæÿ¿$¹\034@$¹\034@À\005\006@\0
\0\0(×,\b\0\0\0\0`Ò,\b\0\0\0\0øÑ,\b\0\0\0\0\002\0\0\0\0\0\0\0
\0\0\0tçÿ¿\t\207\0@\016ù\v@\232\220\003@\0\0\0\0!\204\0@(H\001@xj\0\0øS\001@\027\0\0\0\0\0\002@×\021\n@\001\0\0\0\0\0\002@\0\0\0\0ê\021\n@\0\0\0\0\0\0\0\0_\220\003@®\021\n@ìC\v@!\006\0\0ìd\v@Üá\n@ÀY\001@\a\0\0\0"...
floppyop = {Odevtype = 0x82ca130, Opath = 0x82ca900,
Otype = 0x82ca9c0, Ostatus = 0x82cb190}
cdromop = {Omenu = 0x82cb240, Opresent = 0x82cb2a8, Otype = 0x0,
Omode = 0x402f208, Opath = 0x82c0538, Ojournal = 0x82c3690,
Ocylinders = 0x82c67e8, Oheads = 0x82c9940, Ospt = 0x82bd698,
Ostatus = 0x82c07f0, Omodel = 0x82c3948, Obiosdetect = 0x82c6aa0,
Otranslation = 0x90b0f0e}
choice = 1
#10 0x080db66a in bx_config_interface (menu=1) at textconfig.cc:412
default_choice = 5
prompt = "\0Å+\b\0Å+\b", '\0' <repeats 16 times>,
"Lïÿ¿sÑ\t@\0\225\034@à\220\034@ØA-\b=Ð\t@$¹\034@à\220\034@ØA-\b\0\0\0\0ø\220\034@\0\0\0\0|ïÿ¿»ù\021@ð\224\034@à\220\034@|ïÿ¿£ù\021@\0Å+\b\0Å+\b",
'\0' <repeats 16 times>,
"lôÿ¿®\a\a\bàA-\b\002\0\0\0Àñÿ¿\230ð\021@\0Å+\b\0Å+\b$øÿ¿dï\021@$¹\034@\001\0\0\0\0\0\0\0\\\227\f@\230\237+\b<I+\b\034ðÿ¿\002\024\030@<I+\bh\233+\b\0t*\bìõ\t@$¹\034@"...
floppyop = {Odevtype = 0x401cb924, Opath = 0x82d4370,
Otype = 0x82d4370, Ostatus = 0x40098a1f}
cdromop = {Omenu = 0x400972d0, Opresent = 0x138, Otype = 0x400b23bc,
Omode = 0x40015bb0, Opath = 0xbffff404, Ojournal = 0x40008802,
Ocylinders = 0xbffff35c, Oheads = 0x4011c0fb, Ospt = 0x82d4370,
Ostatus = 0x40008421, Omodel = 0x40014828, Obiosdetect = 0x4011c0dd,
Otranslation = 0x401cb924}
choice = 5
#11 0x080dd99d in ci_callback (userdata=0x0, command=CI_START)
at textconfig.cc:975
No locals.
#12 0x080d8729 in bx_real_sim_c::configuration_interface (this=0x82bbfe8,
ignore=0x80f71a2 "textconfig", command=CI_START) at siminterface.cc:743
this = (bx_real_sim_c *) 0x82bbfe8
ci_param = (bx_param_enum_c *) 0x82cdbf0
name = 0x80f71a2 "textconfig"
retval = 0
#13 0x0806e6ec in bxmain () at main.cc:1785
ci_param = (bx_param_enum_c *) 0x82cdbf0
ci_name = 0x80f71a2 "textconfig"
status = 135524996
context = {{__jmpbuf = {1075624228, 1073827044, -1073743836,
-1073743956, -1073743996, 134669797}, __mask_was_saved = 0,
__saved_mask = {__val = {0 <repeats 32 times>}}}}
#14 0x0806e77b in main (argc=1, argv=0xbffff824) at main.cc:1965
No locals.
#15 0x400c87ee in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
|
|