gnupic@linuxhacker.org

gnupic@linuxhacker.org


Subject: Re: gpsim pinout window
From: Scott Dattalo
Date: Tue, 25 Jan 2000 11:07:38 -0600 (CST)



On Tue, 25 Jan 2000, Ralf Forsberg wrote:

> On Mon, 24 Jan 2000, you wrote:
> >> 
> >> I have a new example at www.acc.umu.se/~rfg/pinout2.gif.
> >
> >One issue that I ignore in the cli is the quad package. Rotation is
> >not an issue, you've got pins on all 4 sides. Also, I assume that
> >the other sized packages (dips not quads) are being added? Or is the
> >package dynamically created?
> 
> Where would I put the pin names on a quad? There is not a simple way
> to draw tilted text. I think you have to draw to a pixmap, rotate the
> pixmap and draw it. But you only have to do it at startup, though.

That is one of gtk's short comings. Motif, for example, allows more
control in this area. Maybe we can pimp Adrian into creating rotatable
widgets! 

> 
> And yes, it's dynamically created.

Another possibility is to begin with hardcoded pixmaps and define 'hot'
areas. These hot areas could define where, for example, the pin direction
indicators need to be drawn, the color coded pin-state information needs
to be drawn, etc. I'm not sure how winamp or pose does it, but they create
and support 'skins' which is a fancy name for these background pixmaps. If
we did this, perhaps we can motivate the artists to create some beautiful
back drops :). 

Here are a couple of other ideas. You could try just providing the extra
space for the names. But then the graphic will not have the same
proportions as the real part. Another alternative is to place the names
outside and the numbers inside. Or you could use James' suggestion and
make the names be part of a tooltip.

> >
> >I don't have anything major to add to what you've presented so far.
> >However, have you considered adding node names to the pins? I have not
> >done it for the cli, but what I was thinking of here was having the pin
> >names on the inside of the IC (like in your .gif) and the node names on
> >the outside. 
> 
> That implies doing better code structure than what I have now (I
> have a single function doing all drawing).

That's totally okay for now. It may have to change later on -- but that's
true of all of gpsim.

> Presently I'm using a gtk_drawing_area and draw with gdk_draw*(). It
> gets a bit complicated, lots of calcluation and stuff.
> 
> >(And I can hear it now... If you show the node names, how
> >about the stimuli on the other end? :)
> 
> Don't forget support for loadable modules (or corba) for implementing
> a RS232 I/O terminal, PC parallel port interfacing, logic components,
> LCDs and stuff. :)

Last weekend, i spent a couple of hours hacking grpn (an rpn calculator)  
to get the damn ui to allow me to easily switch from hex to decimal
(something I spend way too much time doing). To make a long story short,
it got me thinking about how to go about and creating an LCD. As soon as
18.0 is out, I might begin doing this. The goal would be to create a
'module' separate from gpsim. I'm hoping to design an interface which may
serve as a template upon which others may build. 

Scott



gnupic@linuxhacker.org