We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello. I'm trying to obtain a *.hex file using WXP and C51 Compiler V7.0 or upper like the file that was obtained using W98 and C51 Compiler V3.4. I have the following file *.bat: … SET c51bin=c:\c51_v340\bin SET C51LIB=C:\C51_v340\LIB SET C51INC=C:\C51_v340\INC
c:\c51_v340\bin\fmake …
But there is a problem called "stack overflow" when I execute this *.bat from DOS. The instruction "c:\c51_v340\bin\fmake" is not well received. I try to compilate using uVision and changing the tool folders but the program doesn't respond. I can do it using VWARE, a W98 emulator but I want to know if I can do it without this application. Did anybody try something like this? Can anybody help me? Thanks!
Thanks Erik! We are selling a product with a program developed in old style c and this one is not a very good code. It has "times" made from simple loops and without using timers. The company does not want to develop a new code for this product but it's possible that we have to make a small revision, so, we want to be sure than the assembler with new versions of compilers is the same as the old one. I am testing a new version of the program made with the new compiler but, can anybody assure to me that the assembler program is "exactly" the same? I know that it's a bit estrange but It's not my decision…. Bye!
I am testing a new version of the program made with the new compiler but, can anybody assure to me that the assembler program is "exactly" the same?
let me go out on a linb, if it is C most definitely the .hex will NOT be the same.
Erik
You can either: 1. struggle to make the old tools work in a modern environment;
2. try to maintain a contemporary environment on which to run the old tools.
It should still be possible to boot any PC into true MS-DOS mode - so the 2nd option might be the simpler.
I trust you are making clear to the company that neither of these is a no-cost option!
Thanks everybody for your help and your time. I' sorry, Erik. I was asking for your help, I know the most things that you are saying; if you remember my first message was "Did anybody try something like this? Can anybody help me?" If you can't do it, it doesn't matter, it's enough, thank. And thanks Andy, you are saying two things that I'm doing and I'm asking if someone did it before me.
Reinhard>"the solution is to understand what 'fmake' does and setup the project in uVision."
Andy>Or, understand what 'fmake' does, and set up your XP Command Shell appropriately.
We're using an older (3.12) C16X compiler on XP. The compiler and assembler work OK (fortunately!), with a few quirks (resizing command prompt windows, spontaneous aborts with unspecified exit code, no long filenames, etc.). If your compiler etc are working OK, isn't that enough? fmake sounds like a make tool and we're using the latest GNU make (compiler for Windows) and it works fine. Just a thought. That might save you the VWWARE or convert-to-IDE trouble.
Another thought, could it be possible that it crashes on long paths/filenames with spaces etc, used in XP? We had to take that into account in our versioning system.
Regards, Joost Leeuwesteijn
The compilers will almost certainly have new (improved?) code optimisation, which will potentially impact on any software timing loops in embedded code.
The improvements in compiler performance may also permit programming errors in the original stable source code to surface, requiring additional development time to fix those previously undiscovered bugs (features?).
Hello again. Definitively WXP doesn't work with v 3.40 so the only way is work with virtual machines. Others old compilers, like in C16X, can do it, but Technical services of Keil gave me this information. Erik, thanks for your time. Thanks Joost Leeuwesteijn for your help, I think that you understood perfectly what I needed and what the real problem is. Perhaps, a Forum is not the best way to find solutions. The only thing that I have to say is that Bea is a Spanish woman name :-)
So, the problem only can be solved using new compilers and obtaining different *.hex files or using virtual machines to simulate old operating systems over newer systems.