• 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. Executing/Loading SKILL scripts after PCB editor has come...

Stats

  • Replies 7
  • Subscribers 160
  • Views 5346
  • Members are here 0
More Content

Executing/Loading SKILL scripts after PCB editor has come up

ddbarge
ddbarge over 16 years ago

I have written some SKILL scripts and added their entries in allegro.ilinit. These scripts run fine when PCB Editor is coming up.

But now I have an requirement that I want to run some SKILL scripts after the PCB Editor has come up. These scripts manipulate the .BRD files automatically without any user intervention. Also since these scripts use axlXXXX functions I cannot add these scripts in allegro.ilinit

Can anyone provide help on

1) Is there a way to execute/load SKILL scripts after the PCB editor has come up (I know we can do it by typing [skill load "<filename>" ]

    But it needs the user to type this in the PCB command interpreter. But I need automated way of calling my scripts

 

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

    You might want to take a look at the axlTriggerSet function.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • pcbgeorge
    pcbgeorge over 16 years ago
    You just have to include a call to your startup function as the last line in your program, and outside any functions.  Place the program as the first in your allegro.ilinit and it will load and execute that last line.  I use something like this to add local menus to the stock menus before Allegro needs them.
     
    ; This is an example program, not that
    ; there is no axlCmdRegister definition.
    ; -----------------------------------------
     
    (defun firstFunction ()
     
    ...
     
    ); end-defun
     
    (defun secondFunction ()
     
    ...
     
    ); end-defun
     
    (defun thirdFunction ()
     
    ...
     
    ); end-defun
     
    ...
     
    (printf "myProgram loaded...\n")
     
    ; This calls the firstFunction after
    ; everything else is loaded.
    ; -----------------------------------------
    (firstFunction)
    ; End-Of-File
     
    --
    George Patrick
    Tektronix, Inc.
    Central Engineering, EDS Applications Support
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • pcbgeorge
    pcbgeorge over 16 years ago
    I may have misunderstood.  If you want to run an Allegro script on startup (not a SKILL program), you can start Allegro with the -s command line switch:  "allegro -product PCB_design_expert -s scriptname[.scr]"
     
    --
    George Patrick
    Tektronix, Inc.
    Central Engineering, EDS Applications Support
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • ddbarge
    ddbarge over 16 years ago

     Thanks Dave and George for the prompt replies.

          I will follow up with you Dave if I need some pointers. For now can you tell me where should this trigger registration code go into, I am perplexed because using axlTriggerSet() which is essentially a SKILL function cannot be used in any scripts that are mentioned in allegro.ilinit (this is what is my understanding.

         @George: Well I dont want to execute any .scr but SKILL programs, but thanks for the suggestion. Please let me know if there are any other pointers.

            As Dave said, I think axlTriggerSet() looks promising.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • eDave
    eDave over 16 years ago

    Place your axlTriggerSet command in your allegro.ilinit file.

    I have this command in my ilinit file: axlTriggerSet('open 'tait_OpenAllegroTrigger)

    tait_OpenAllegroTrigger is a function in a Skill file that has already been loaded by the ilinit file.

    • 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