[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gEDA: BGA hacking on pcb-20040530



Fellow pcb hackers -

> > Here's a small amount of work on BGA handling based on
> > the 20040530 pcb snapshot.
> > 
> > 
> > I will be away from e-mail for a week, so any near-term
> > discussions about this on geda-dev won't include me.

OK, I'm back.

> > I don't know how to take advantage of the newly claimed
> > higher resolution mode of pcb.
> > +# biggest problem now (I think) is the 40 mil pitch approximation to 1.0 mm
Magnus wrote:
> Try 39.37 mil. It's 999.998 um.

Does this mean I can simply put numbers like 39.37 in
the m4 output, where I was traditionally limited to integers?

> Last time I looked, it looked like the RJ-connectors was even washed out of the
> CFR, so it's usage is harder and harder to trace back to any form of formal
> specification, it's only a folklore tradition these days.

Sigh.  I guess I should really list the part number, since
I can't really expect all Ethernet connectors to have the
same footprint.

I just now started to play around with netlists and ratlines
in a BGA context.  Things started to behave themselves after
I applied the appended patch.  I don't promise that it does
the Right Thing [TM].

      - Larry

--- ../pcb-20040530/src/rats.c	Thu Apr 29 16:50:22 2004
+++ src/rats.c	Mon Jul 12 10:55:25 2004
@@ -123,7 +123,7 @@
   if ((element = SearchElementByName (PCB->Data, ElementName)) != NULL)
     {
       for (i = 0; i < element->PadN; i++)
-	if (strcmp (PinNum, element->Pad[i].Number) == 0 && (!Same
+	if (strcmp (PinNum, element->Pad[i].Name) == 0 && (!Same
 							     ||
 							     !TEST_FLAG
 							     (DRCFLAG,
@@ -150,7 +150,7 @@
 	{
 	  for (i = 0; i < element->PinN; i++)
 	    if (!TEST_FLAG (HOLEFLAG, &element->Pin[i]) &&
-		strcmp (PinNum, element->Pin[i].Number) == 0 &&
+		strcmp (PinNum, element->Pin[i].Name) == 0 &&
 		(!Same || !TEST_FLAG (DRCFLAG, &element->Pin[i])))
 	      {
 		conn->type = PIN_TYPE;