Im on a new computer, trying to use the A51 assembler. In a command prompt window, I can type "A51 some_file.asm" and the assembler will load, however, it will give me a fatal error with the error being an unknown control. I am not using any control directives but when I do, I still get the same issue. My path and environment variables (C51LIB and C51INC) were set to the directory where they were installed, am I missing something?
Same problem here, UNKNOWN CONTROL (The selected control parameter is unrecognized by the compiler)
I am using C51 COMPILER V3.20 in the XP command-box. Code was buildable 20 years ago, has not been touched since then.
Environment and library-paths are set correct
Any idea?
You have a file and/or folder name with a space (or spaces) in it.
But, surely, the message also tells you what it considers to be the "UNKNOWN CONTROL"...?
@Andy: I first thought that too! But when I just try to call:
c51.exe mm75_ltr.c the error appears, altough there is no space in it
Post the full text of the command and response - copy & paste from your "XP command-box"
MS-DOS C51 COMPILER V3.20 COPYRIGHT KEIL ELEKTRONIK GmbH 1988, 1989, 1990 C51 FATAL-ERROR - ACTION: PARSING INVOKE-/#PRAGMA-LINE LINE: E:\PL_IS\D30_IS~1\TOOLS\C51\BIN\C51.EXE ..\SOURCES\LTR_MM75.C ERROR: UNKNOWN CONTROL C51 TERMINATED.
http://www.keil.com/support/man/docs/c51/c51_er_actions.htm
www.fsinc.com/.../com97g6.htm
Thanks Andy. I already found these sites, but there was no helpful hint, or I just didn't recognize it. But meanwhile I found the simple solution:
One directory in my path had more than 8 characters, that was all. So I shortened it and now it works. :D
"One directory in my path had more than 8 characters"
Clearly, 20-year-old tools were never designed to cope with that!
Problem Solved: Sorry it took so long to get back, very busy week at work! The problem was solved a few days ago. The way our computer system was setup, the compiler/linker/assembler was installed over the network for employee use. What I did (too bad I didn't think of this sooner) was copy the directory the files were stored in to my local machine. The files were put in C:\work\keil and all I had to do was edit some of my environment variables (System Poperties -> Advanced -> Environment Variables). The Path variable gets modified so "C:\work\keil" is at the end and I created C51INC variable with path "C:\work\keil\inc" and C51LIB with path "C:\work\keil\lib".
My next try was to recompile and everything worked, no errors no warnings. Hope this helps