Fujitsu The Possibilities are Infinite

FAQ for F2MC-16LX Family

Tools


To FAQ List

  1. An (INTVECT) warning saying that the vector section is placed outside the RAM or IO area. is output.
  2. A warning saying that no external symbol is defined is output.
  3. In C, a statement beginning with "//" is not handled as a comment.
  4. Why does an error of "E4062C: Syntax error: Near `/'" occur at C Compile?
  5. It seems that the watchdog is set as invalid in the use of ICE. How can I validate the watchdog?
  6. What are differences between the relocatable file .rel and library file .lib?
  7. How does the linker link the .lib file and the .rel module? Are there differences in the method of linking?
  8. Why is the following error is output when I attempts to link the .lib module and .abs? E4369L: Invalid module : conflict compile model
  9. Where is the place in which the function "automatic load after make/build" is set?
  10. The I/O and RAM areas cannot be monitored.
  11. I want to embed FFH data of the Motorola S-format in the free space.
  12. I want to perform automatic arrangement with upper justification (vector area) by using the automatic arrangement function of the linker.
  13. Teach me how to provide no space in arranging a structure member.
  14. Teach me how to code the Volatile-type qualifier when any RAM target area is to be excluded from optimization.
  15. Teach me the results obtained when the operation data is set to "0" at execution of an instruction "MULU" or "DIVU."
  16. What is the meaning of ALIGN in the section arrangement format?
  17. What HEX data can be output by Softune?
  18. What is the meaning of ._LINE to be output as a result of the C compilation?
  19. Is it not a problem that the @-ro ROM=xxxx @-ra RAM=xxx setting duplicates with -ro _ROM_1=xxx -ra _RAM_1=xxx, the latter half of Control (S) of the MAP file?
  20. The section CODE size exceeds 64 KB, thus causing an error. Error message: *** E4363L: Exceeded maximum section size (CODE)
  21. Teach me the method of establishing assembler determination without describing the address specifier in an operand of a source when using the dir or io section. Example of coding the address specifier: mov  S:label,#imm8
  22. At present, I generate and use a file that is included from the assembler source and C source. When I code macros of the assembler in these files, a compiler causes an error. Can I not use such a file?
  23. I want to execute some functions of a C program on RAM. Teach me how to put codes to be executed on RAM in ROM.
  24. I want to execute some functions of a C program on RAM. Teach me how to transfer codes put in ROM to RAM.
  25. When I declare variable symbols by using fixed addresses, they are arranged in exact reverse order of the source coding order. Teach me how to arrange them in source coding order.
  26. When a transition is made to pseudo watch mode (time-based timer mode) or watch mode, what happens to the LED on the pod?
  27. Guarded access break occurs when a subroutine is called from the main routine at software evaluation by a tool.
  28. No value is successfully stored in the IO. (Especially, in the IO placed at address 100 and subsequent ones)
  29. "POPW RW1,RW2", and "PUSHW RW1,RW2" result in an error for Softune V3.
  30. FW16.exe cannot be executed on the English-version Windows XP environment because when FW 16.exe is executed, the message "Error103 wrong write file" appears at once. FW16.exe runs without any problem on the Japanese-version Windows 98. Does FW16.exe not run successfully on the English-version Windows?
  31. I changed the development tool from MB2141A to MB2141B and then attempted to download a monitor program to MB2141B but failed. (I used the RS-232C cable.)
  32. What is the unit of the timestamp of the trace added from MB2147-01?
  33. I want to embed the free area of HEX data with specific values.
  34. I want to embed the free area of Intel HEX data with specific values.
  35. When I verify interrupt operations by using the software simulator, I cannot confirm the intended operations of an actual machine.
  36. Teach me how to check a version of each SOFTUNE tool.
  37. I want English-version SOFTUNE.
  38. When a debugger is activated with a tool, a memory error is output. (Target: MB90590G Other large-capacity memory products)
  39. When using MB90387S (1 clock system), how can I set the jumper pin of POD? (Target:MB90385series)
  40. At ICE power-on, LEDs of Reset and VCC on the pod come on and Reset cannot be canceled.
  41. When a debugger is started and a reset is implemented, a hardware error occurs. (Target:MB90V470B)
  42. The debugger runs normally on MB90V470B. The P2x output, however, does not work. All operations are normal on the set of MB90V470L and conversion substrate. (Target:MB90V470B)
  43. I am using MB2145-506. Teach me the current consumption of this tool.

An (INTVECT) warning saying that the vector section is placed outside the RAM or IO area. is output.

  • Answer :
    This is because the Section type of INTVECT (interrupt vector table) output by #pragma intvect of fcc is DATA. Change the section attribute with the #pragma specification (#pragma section INTVECT, attr=CODE) or with the option specification (-s INTVECT=INTVECT, CONST) in the file.

A warning saying that no external symbol is defined is output.

  • Answer :
    Define the I/O register variable. Add all of -.c existing in C:\Softune\lib\907\include\sample, in Include Files to members.

In C, a statement beginning with "//" is not handled as a comment.

  • Answer :
    Select [Set Project] from the menu, select category [Language Specification] of [C Compiler] from [Set Project], and then check the checkbox indicating that the portion following "//" is out commented in the C source.

Why does an error of "E4062C: Syntax error: Near `/'" occur at C Compile?

  • Answer :
    This is a problem relating to the setting of the C compiler language specifications. Check "Handle the portion after // in the C source as comment" in "Project" by selecting "Set Project", "C Compiler", and "Language Specifications" of Softune.

It seems that the watchdog is set as invalid in the use of ICE. How can I validate the watchdog?

  • Answer :
    At debugging, the watchdog is initialized to be invalid. To validate it, start the debugger, select [Environment], [Set Debug Environment], and [Debug Environment] on the menu and then validate the watchdog in <chip>.

What are differences between the relocatable file .rel and library file .lib?

  • Answer :
    Relocatable file .rel is a file obtained by linking two or more object modules without address resolutions. It is relocatable to the linker to reduce the number of input files to be specified by link processing.
    Library file, .lib, is a file in which two or more object modules are grouped. Unlike the relocatable file, each module is independently registered. When a library in which general-purpose modules used by other programs are registered is generated in advance, modules can be easily applied to other programs. A library can be added, registered, deleted, or replaced for each object. When a module is changed, only this changed module can be replaced.
    On the other hand, for relocatable file, .rel, when an internal module is changed, the changed module cannot be replaced.

How does the linker link the .lib file and the .rel module? Are there differences in the method of linking?

  • Answer :
    The linker first obtains information on object files, .obj and .rel, registered in the project. When module information is insufficient, the linker searches the library file for a module and obtains required module information. Only necessary modules are linked to the .lib file. However, all modules are linked for the .rel file.

Why is the following error is output when I attempts to link the .lib module and .abs? E4369L: Invalid module : conflict compile model

  • Answer :
    The compile model of the project that generated the library file .lib is different from the compile model of the .abs project. Small is set for the compile model of the project of the library file, and medium is set for the compile model of the .abs project. Match their compile model specifications.

Where is the place in which the function "automatic load after make/build" is set?

  • Answer :
    The setting place is in the item "debug." in "basic setting" selected from "project."

The I/O and RAM areas cannot be monitored.

  • Answer :
    The mirror area need be set. Add the areas to be monitored, as mirror areas in item "Add Mirror" in "Memory Map" selected from "Environment," and then set copying.

I want to embed FFH data of the Motorola S-format in the free space.

  • Answer :
    You can use the S-format adjuster for this purpose. For details, see the Softune linkage kit manual.

I want to perform automatic arrangement with upper justification (vector area) by using the automatic arrangement function of the linker.

  • Answer :
    The automatic arrangement function cannot perform an arrangement with upper-justification (vector area). To perform this arrangement, set the start address by specifying the absolute section.

Teach me how to provide no space in arranging a structure member.

  • Answer :
    If the "-pack" option is specified, no space is provided in arranging a structure or union member. "-Xpack" cancels "-pack." By default, "-Xpack" is used.

Teach me how to code the Volatile-type qualifier when any RAM target area is to be excluded from optimization.

  • Answer :
    • Coding without the pointer
      No problem occurs even if the Volatile-type qualifier is described anywhere.
      Coding example) volatile register unsigned int addrRAM;
    • Coding with the pointer
      1. When the pointer itself is to be volatile, describe the Volatile-type qualifier after the pointer.
        Coding example) register unsigned int * volatile addrRAM
      2. When the memory the pointer references is to be volatile, describe the Volatile-type qualifier before the pointer.
        Description example) volatile register unsigned int * addrRAM;

Teach me the results obtained when the operation data is set to "0" at execution of an instruction "MULU" or "DIVU."

  • Answer :
    • The result is "0" when the operation data of one or both sides is "0" at execution of the "MULU" instruction (example: 2 is multiplied by 0) and that causes no problem.
    • The result is undefined when the divisor is "0" (example: 2 is divided by 0) at execution of the "DIVU" instruction. If the dividend is "0" (example: 0 is divided by 2), there is no problem because the result is "0".

What is the meaning of ALIGN in the section arrangement format?

  • Answer :
    "ALIGN" sets the boundary of the start address of SECTION. The ALIGN values are only those of power-of-two value. The setting examples are listed below.
    • SECTION AAA, DATA, ALIGN=4 AAA is arranged at the xxxxx00b address as the start address.
    • SECTION BBB, DATA, ALIGN=8 BBB is arranged at the xxxx000b address as the start address.

What HEX data can be output by Softune?

  • Answer :
    The supported output file formats are as follows:
    • Intel HEX-format
      Data at addresses 0 to 0xFFFF is converted.
    • Extended Intel HEX-format
      Data at addresses 0 to 0xFFFFF is converted.
    • Motorola S-format
      Data at addresses 0 to 0xFFFFFFFF is converted.

What is the meaning of ._LINE to be output as a result of the C compilation?

  • Answer :
    ._LINE *1,*2 is debug information. *1 indicates a file number and *2 the line number of the C source. You can confirm the file number with ._FILE of the .lst file.

Is it not a problem that the @-ro ROM=xxxx @-ra RAM=xxx setting duplicates with -ro _ROM_1=xxx -ra _RAM_1=xxx, the latter half of Control (S) of the MAP file?

  • Answer :
    -ro _ROM_1=xxx -ra _RAM_1=xxx , the latter half of Control (S) of the MAP file, is automatically output by the linker based on the CPU information file. This setting becomes valid when the memory map is not set by the linker setting. When @-ro ROM=xxxx @-ra RAM=xxx is set before this setting, the setting specified before this setting becomes valid. Moreover, the output of -ro _ROM_1=xxx -ra _RAM_1=xxx, the latter half, can be suppressed by the suppression option (-Xset_rora) of the linker.

The section CODE size exceeds 64 KB, thus causing an error. Error message: *** E4363L: Exceeded maximum section size (CODE)

  • Answer :
    When the section CODE size exceeds 64 KB, you need to separate the name of the section CODE of the C source file. Change the name of the definition area (section) as follows:
    Example 1: Change the section name.
    #pragma section CODE=prog1
    Example 2: Change the section name and specify the arrangement of the section.
    #pragma section CODE=prog2, locate=0xFF0000
    *Caution: One definition area (the same section) name is assigned to one file. To define two or more names of the definition area (example: CODE attribute), you need to separate the file.
    Invalid description examples: Within the same C source file
    #pragma section CODE=prog1
    :
    #pragma section CODE=prog2
    :

Teach me the method of establishing assembler determination without describing the address specifier in an operand of a source when using the dir or io section. Example of coding the address specifier: mov  S:label,#imm8

  • Answer :
    Under the present conditions, the assembler can access to the direct area only by specifying the address specifier.

At present, I generate and use a file that is included from the assembler source and C source. When I code macros of the assembler in these files, a compiler causes an error. Can I not use such a file?

  • Answer :
    You need the following procedure when reading macro definitions of the assembler from the C source:

    1. Add the following control command to the optional character string specification of the C compiler:
      -Ta,-Ic:\softune
      *c:\softune is the place containing port.h.
    2. Include a file from the C source as follows:
      pragma asm
      #include "PROT.H"
      mFRONT_power_ON
      pragma endasm.

I want to execute some functions of a C program on RAM. Teach me how to put codes to be executed on RAM in ROM.

  • Answer :
    The "-sc" option is provided in the option specification of the linker. Example: First, name the function to be executed on RAM. #pragma section FAR_CODE=new1
    Next, specify the following with the "-sc" option of the linker: -sc new1=0x1000,@new1=0xff1000

I want to execute some functions of a C program on RAM. Teach me how to transfer codes put in ROM to RAM.

  • Answer :
    Transfer program from ROM to RAM
    ;------------------------------------
    ; Program ROM → RAM
    ;------------------------------------
    .global _RAM_new1
    .global _ROM_new1

    MOVN A, #0
    MOV DTB, A
    MOV A, #0xFF
    MOV ADB, A
    MOVW A, #SIZEOF(new1) ;; Transfer size
    MOVW RW0, A
    MOVW A, #_RAM_new1 ;; RAM address
    MOVW A, #_ROM_new1 ;; ROM address
    MOVS DTB, ADB

When I declare variable symbols by using fixed addresses, they are arranged in exact reverse order of the source coding order. Teach me how to arrange them in source coding order.

  • Answer :
    There is an option (-verorder) that changes the memory storage order of static variables to the source coding order.
    To set this option, check the checkbox in front of the item "Change the memory storage order of static variables to the source coding order" by selecting [Set Project] , [C Compiler] , and then category [Language Specification].

When a transition is made to pseudo watch mode (time-based timer mode) or watch mode, what happens to the LED on the pod?

  • Answer :
    For a transition to pseudo watch mode (time-based timer mode) or watch mode, "STOP LED" comes on. In pseudo watch mode, the oscillation of main clocks and sub-clocks is sustained. However, in watch mode, main-clock oscillation stops. In stop mode, since the oscillation of main clocks and sub-clocks stops, you need to confirm the oscillation status.

Guarded access break occurs when a subroutine is called from the main routine at software evaluation by a tool.

  • Answer :
    It can be considered that the memory map differs from that of the real device. One possible example is that the link instruction is executed at main routine call and the stack area differs from the real device. In this case, when you use start905*.asm, make the setting of the definition stack area in an appropriate range.

No value is successfully stored in the IO. (Especially, in the IO placed at address 100 and subsequent ones)

  • Answer :
    A different method is used to code the section of the IO area placed at address 100 and subsequent ones. Set the section type of the IO placed at address 100 and subsequent ones to "DATA" or "COMMON." Do not code the IO direct addressing (example: MOV I:CANCT0,#020H) of the IO area placed at address 100 and subsequent ones.

"POPW RW1,RW2", and "PUSHW RW1,RW2" result in an error for Softune V3.

  • Answer :
    For SoftuneV1, the coding in the left column causes no problem but, for V3, parentheses are required like "POPW (RW1,RW2)","PUSHW (RW1,RW2)."

FW16.exe cannot be executed on the English-version Windows XP environment because when FW 16.exe is executed, the message "Error103 wrong write file" appears at once. FW16.exe runs without any problem on the Japanese-version Windows 98. Does FW16.exe not run successfully on the English-version Windows. (Target: FW16.EXE)

  • Answer :
    This software is not evaluated for the Windows XP environment. This is written in the explanation of the operating environment of this software. Use the following environment for which this software is already evaluated:

    Recommended environment:
    Personal computer: FMV 6450TX2
    CPU: Pentium 450MHz
    OS: Japanese and English versions of Windows 95 OSR2.1 and later, Windows 98 SE, Windows Me, Windows NT 4.0 SP6 and later, and Windows 2000
    Memory: 192 MB
    Normal operation is already confirmed for the English versions. Teach us the use environment in your company.
    However, abnormal operation has ever been confirmed for Dell' s personal computer, Dynabook, and so on.

I changed the development tool from MB2141A to MB2141B and then attempted to download a monitor program to MB2141B but failed. (I used the RS-232C cable.)

  • Answer :
    For RS-232C connection, a 9 pin to 25 pin straight through cable is used for MB2141A. Note, however, that a 9 pin to 9 pin cross cable is used for MB2141B.

What is the unit of the timestamp of the trace added from MB2147-01?

  • Answer :
    ns is the unit of the timestamp of the trace added from MB2147-01. The resolution is 25 ns.

I want to embed the free area of HEX data with specific values.

  • Answer :
    1. At make/build execution, set the start of the object converter.
      Selecting [Project] and [Basic Setting] of SoftuneV3, open "Basic Setting Window".
      In the "Make/build" tab, check the checkboxes of "Be sure to establish a link" and "Start the load module and converter".
    2. Selecting [Project] and [Customize Build] of SoftuneV3, open the "Customize Build" window.
    3. Click "After" in Converter in the "Tree View" on the left side of the "Customize Build" window, and set each column on the right side of the "Customize Build" window.
      Title column: Any name
      Name of file executed: [softunev3-installation-directory]\bin\M2ms.exe
      Options:
      (Example) 0x00 is padded in free addresses between 0xff0000 to 0xffffff, inclusive. The name of the generated file takes over the ABS file name and its extension is "AHX."
      %xABS\%A.mhx -ran 0xff0000,0xffffff -p 0x00
      Directory at execution
      %xABS
      Others
      On the "Customize Build" window, check the following:
      • "Valid" in the checkbox
      • "Use of the output window" in the checkbox

I want to embed the free area of Intel HEX data with specific values.

  • Answer :
    We added H2HS.exe.

When I verify interrupt operations by using the software simulator, I cannot confirm the intended operations of an actual machine.

  • Answer :
    The software simulator cannot perform actual-machine debugging of interrupt operations. An interrupt will occur with the specified interrupt vector number and at the specified timing. (No link is provided to resource interrupt factor generation.)

Teach me how to check a version of each SOFTUNE tool.

  • Answer :
    You can check a version of Workbench from the version information in "HELP." You can also check the version information of each tool with "Ctrl+Alt+Shift+A."

I want English-version SOFTUNE.

  • Answer :
    SOFTUNE is contained in a single CD and supports Japanese and English versions. When you install SOFTUNE on Japanese-version Windows OS, Japanese-version SOFTUNE starts. When you install it on English-version Windows OS, English-version SOFTUNE starts. You can also start English-version SOFTUNE tentatively on Japanese-version Windows. <Method> Write "-@E" after Fs907s.exe that is the link destination of [Shortcut] tag selected from [Property] of the SOFTUNE shortcut, and start SOFTUNE from the shortcut for which the setting is done.

    Example:
    C:\Softune\BIN\Fs907s.exe -@E
    However, since SOFTUNE runs on Japanese-version OS, part of Japanese language remains unchanged.

When a debugger is activated with a tool, a memory error is output. (Target: MB90590G Other large-capacity memory products)

  • Answer :
    The possible causes are:

    1. The pod uses MB2145-506. (Use MB2145-507.)
    2. The memory map setting for the debugger may not match that of the real device.

When using MB90387S (1 clock system), how can I set the jumper pin of POD? (Target: MB90385series)

  • Answer :
    Set <SW1>3 and <SW1>4 to "OFF" and <S1>1 and <S1>2 to "A-B."
    The probe cable of <SW1> is not connected but unnecessary connection need be cut.

At ICE power-on, LEDs of Reset and VCC on the pod come on and Reset cannot be canceled.

  • Answer :
    This symptom will occur by power-on at emulator initialization. An inquiry was made with no monitor loader at new purchasing. Other cases: 1) The same symptom will occur when "EML905N" is loaded in the emulator and the 506 pod is used. 2) When the "EML905" is loaded in the emulator and the 507 pod is used, LEDs of VCC and EXE come on and enter debug executing status.

When a debugger is started and a reset is implemented, a hardware error occurs. (Target: MB90V470B)

  • Answer :
    The possible cause is that the MB2145-507 pod setting is not the one for the use of the tool power supply. Since MB90V470B is an evaluation chip that operates with the tool power supply, confirm the MB2145-507 pod setting. For details, see the hardware manual on the MB2145-507 pod.

The debugger runs normally on MB90V470B. The P2x output, however, does not work. All operations are normal on the set of MB90V470L and conversion substrate. (Target: MB90V470B)

  • Answer :
    In MB90V470B, the chip of a 3-V single power supply product and that of a 2-power supply (3 V and 5 V) product are made common. Vcc5 is the I/O driving power supply (5 V driving possible) of P2x, P3x, P4x, and P7x. So, confirm that the Vcc5 power supply is provided. For the precedent products, MB90V470L (3-V single-power supply product), MB90V470H (2-power supply system product), and a dedicated chip were provided. So, in MB90470L, the power supply is made common for all products.

I am using MB2145-506. Teach me the current consumption of this tool.

  • Answer :
    In general, current of about 40 mA or so flows during operation. We think that you will use the Evaluation (EVA) chip. So, you need to examine the current consumption including that of the current (dozens mA) of the EVA chip. (When each port consumes current, such current need be taken into consideration.)