Hi Dan,

I'm glad you got it with such little help!

El mar, 25-04-2006 a las 18:27 -0400, Dan McMahill escribió:
[snip great news about new functions]
> Some of the unresolved issues that I'd like to figure out are:
> 
> - how can I let gschem know the name of the gsch2pcb project file?  I
> have a PCB->run gsch2pcb menu choice, but right now it just runs
> gsch2pcb with no arguments which just gives you help text.  Should this
> go into a gafrc file in your project directory maybe?  If so, I should
> probably have a way to change that name and have gschem write it back out.
> 
> - same comments about letting gschem know about the layout file name.

I'm not sure if all these variables should be in the gafrc file or in a
project configuration file... let others to comment on this.

> - how to have gschem detect what gsch2pcb did and issue the appropriate
> actions to pcb to load new elements, load the new netlist, update pin
> names, etc.

> - how to let gschem access the net aliasing and refdes aliasing scheme
> commands from gnetlist and the gnetlist backends.  I don't think pcb
> currently uses this, but many other backends should.

If we assume gnetlist is always installed with gschem, gschem could load
the gnetlist.scm which defines those functions and use them.

> - how to backannotate things like refdes renumbering from pcb to gschem

Regarding the backannotation (it doesn't matter what you need to
backannotate), write to a log or action's list file/pipe and process it
seems to be the most common choice for other simple apps, but it is a
one-way communication, and there should be some way to trigger the
action's list file processing.
 
Another option could be that gsch2pcb or pcb calls some gschem's scheme
functions every time it needs to change something. Could be possible
that two programs could use a single scheme interpreter and execute
functions exposed by both?

I also remember that there are techniques to communicate two processes,
like IPC or using a message passing interface, but I don't know too much
about them...

> - how to backannotate simulation results to the schematic.  Maybe we put
> some annotation attributes on components?  For example, put an
> annotation attribute on each pin of each element and you could back
> annotate the voltage at the pin or the current out of the pin from
> spice.  For elements you might have multiple annotation attributes or
> maybe just a multi-line annotation attribute so you could annotate back
> a bunch of small signal parameters for a transistor (for example).

Once we have some way to backannotate things, you can use the
autoplace-text functions added recently (look at
gschem/scheme/auto-place-attribs.scm and look for
"default-position-of-text-attributes" in gschem/lib/system-gschemrc).
Using those functions, you only have to define in the gschemrc file
where you want the attributes. When you add them, they will be
autoplaced in the defined position (there are different positions for
different rotations).

Regards,

Carlos

Reply via email to