MAGIC Magic Mailing List
 
 

From: john.wood AT multigig DOT com
Date: Wed Nov 28 2001 - 08:26:33 EST

  • Next message: Spaceborne Calin: "Re: Magic Wrapping - GUI interface project"

    New open-source project annoucement.
    
    "magic wrapping"
    
    Magic Wrapping is an attempt to put a modern GUI onto Magic
    without changing the underlying code at all.
    It will work will all versions of magic hosted on *nix OS
    This will then be extended to wrap a schematic capture program
    (log or Xcircuit), a spice wrapper (we've got a lot of this
    done already) to make a simple but usefull
    VLSI edit system for high speed analogue design.
    
    It borrows from lots of old and new code around the internet.
    TkSteal - provides routines to 'fake' X events into another application
    BLT - for embedding one X window inside a Tcl/Tk window
    + Tabs + Hierarchy.
    KTK - "Fake" KDE visual style for Tcl/Tk
    Expect - To send and recieve (eavesdrop) on the output of magic
    The example program starts up an Xterm, Magic and a BLT-enhanced Tcl/Tk
    script.
    The menus on the right work like magic paint (you can middle-click on them
    to paint) or can left-click to turn the layer on or off.
    Not shown is ballon help which pops up to show you what's happening.
    Magic is running with OpenGL extensions within the 'stolen' window.
    The Xterm still works 100% as normal to issue commands to magic,
    the GUI and console are both active at the same time.
    
    The tcl/tk script 'listens' to what magic outputs to the console using
    the Expect package. It can tell when the user changes from
    box-wiring-netlist and update the GUI accordingly.
    At the moment, zoom, undo redo etc are mapped but soon we will have
    GUIs onto all the Magic commands, and plan to do
    wizards for cif-out etc. 
    
    A Wizard for transistor generation will be coming v.soon.
    Online help might happen eventually, 
    
    Obviously we would welcome help from the Open-source
    and Magic hackers to finish this thing off.
    
    As an approach it's not very elegant, but it works, and at least 
    it's quick to build and can be adapted to take control 
    of any public domain tool .
    
    Tcl/Tk we find is easy to learn and use, especially
    for non-programmer electronics engineers.
    See attached screenshot.
    
    best regards,
    John Wood
    
    
    
    

    magic_wrapping.gif


  •  
     
    Questions? Contact Rajit Manohar
    cornell logo