• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Allegro X PCB Editor
  3. Help with "E- *Error* axlFormBuildPopup"

Stats

  • Replies 5
  • Subscribers 159
  • Views 1981
  • Members are here 0
More Content

Help with "E- *Error* axlFormBuildPopup"

statz
statz over 14 years ago

I've downloaded the skill script "align_sym.il" and I added it to my skill directory and updated my allegro.ilinit file like I do my other skill scripts that I download from Cadence. However this skill script is giving me major problems. Everytime I run it I get the following message "E- *Error* axlFormBuildPopup: argument #1 should be any user-defined (other) type (type template = "otl") - nil". I tried Cadence support first, but they have no clue how to fix it. Can someone here help me figure out what the problem is?

 Thanks,

  • Sign in to reply
  • Cancel
  • eDave
    eDave over 14 years ago

    I loaded the script and it works for me.

    The error message you are getting implies the form has not been loaded. This will happen if there is any problem creating a file in your working directory.

    It's old code with very little error capturing and doesn't use local variables so all sorts of things could be going wrong. However, the code does work for me so you should persevere.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • statz
    statz over 14 years ago

    Thanks for the feedback.

    I don't know the SKILL language so I need some help debugging this. What line/function defines where the form needs to be saved? Can we hard code in a directory to save the forms in? Maybe it's trying to use one of my windows environment variable to give it a location, but that variable doesn't exist so it then starts saving it to a place where I have no write access.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • fxffxf
    fxffxf over 14 years ago

     The code uses "outfile" as the mechanism to create the form file, align_sym.form. If you skill path doesn't have "." as its 1st item then it will create the form file in a directory other then the current directory and axlFormCreate won't be able to find the form file. This can be fixed by:

       - change the code to axlDMOpenFile instead of outfile  -- see the doc on the arguments it requires

       - updating your skill path in your <HOME>/allegro.ilinit file to include a "." -- you will probably see it already being set in this file.

           setSkillPath( cons( "." getSkillPath() ) )

       As an expermiment you can type the the following on the allegro command line,then run the align command again. If it works that was your program:

          skill  setSkillPath( cons( "." getSkillPath() ) )

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • statz
    statz over 14 years ago

    Awesome I think we're getting close. In my allegro.ilinit file I have the following

    skillDir = "c:/adiva/interfaces/cadence"
    adiva_install = "c:/adiva/"

    (setSkillPath (append (list "C:/allegro_scripts" skillDir) (getSkillPath)))

    setSkillPath( cons( "." getSkillPath() ) )

    (load "cwidth.il")
    (load "align_sym.il")
    (load "component_changes.il")
    (load "replace_via.il")
    (load "RotateSilkAssyRD.il")

    println("allegro.ilinit file loaded")
    (load "adiva_iface_v300ib.il")
    (load "adiva_vio_lnk_v1q.il")

    (axlShell "alias F12 (readError)")

    I save the il files to the c:/allegro_scripts directory so all of the scripts except for align_sym work. However when I input "set SkillPath( cons( "." getSkillPath() ) )" into the allegro command prompt I can then get align_sym to work. How do I adjust the setSkillPath line such that I can load my scripts properly from the C:/Allegro_scripts directory? I tried adding "." to the "list" but it doesn't seem to want to work, and so I thought adding it as a separate line would get it to work but that has been unsuccessful thus far.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • statz
    statz over 14 years ago

    OK so the easy fix that I use to make the align_sym script work is to change it from

     frmfle = outfile("align_sym.form")

    to

    frmfle = outfile("./align_sym.form")

    However I'd still like to understand why my allegro.ilinit file isn't working properly. I've tried putting the set skill path line at the very beginning of my allegro.ilinit file and it still doesn't work. 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Cadence Guidelines

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information