First post, by jukivili
Hello,
I tried Carmageddon 1 with dosbox-0.74, got those horrible vertical bars. So I searched for solution and found out about 80bit vs 64bit floating point issue. Then I checked code and saw that on 32bit x86 dosbox uses i387 fpu using assembler macros and started wondering why it is not used for x86_64 (as it's perfectly allowed to use i387 FPU in 64bit mode).
So I hacked a bit,
1. added some #ifdef __x86_64__ ... #else ... #endif to fpu_instructions_x86.h
2. made new x86_64 macros for gcc (simply by renamed all %eax => %rax, all movl/incl/decl/shll/[op]l => movq/incq/decq/shlq/[op]q, that's all)
3. Edited configure.in to enable x86 assembler fpu on x86_64
And it just worked on first run, Carmageddon 1 on x86_64 dosbox without graphics glitch.
So do you want me to send patch for this? I really would not want to touch the MSVC part and this really is trivial fix anyways.