diff --git a/src/main/dig/74xx/counter.dig b/src/main/dig/74xx/counter.dig index 761740e85..fd3d6dc39 100644 --- a/src/main/dig/74xx/counter.dig +++ b/src/main/dig/74xx/counter.dig @@ -1,7 +1,12 @@ 1 - + + + Description + Three digit BCD counter. + + 7447.dig @@ -110,12 +115,16 @@ runRealTime true + + Label + C + Frequency - 10 + 2 - + VDD @@ -189,12 +198,16 @@ - - + + - - + + + + + + @@ -273,16 +286,12 @@ - - + + - - - - - - + + @@ -453,11 +462,11 @@ - + - + @@ -489,7 +498,7 @@ - + @@ -501,7 +510,7 @@ - + @@ -541,7 +550,7 @@ - + @@ -781,7 +790,7 @@ - + diff --git a/src/main/dig/74xx/lib/74162.dig b/src/main/dig/74xx/lib/74162.dig index 6b06d8f25..d1205aab9 100644 --- a/src/main/dig/74xx/lib/74162.dig +++ b/src/main/dig/74xx/lib/74162.dig @@ -11,16 +11,29 @@ Presettable synchronous BCD decade counter; synchronous reset + + Color + + 255 + 255 + 153 + 255 + + D_FF - + Out + + Description + flip-flop outputs + rotation @@ -34,7 +47,7 @@ counter; synchronous reset 14 - + Or @@ -44,7 +57,7 @@ counter; synchronous reset - + And @@ -54,7 +67,7 @@ counter; synchronous reset - + And @@ -64,16 +77,20 @@ counter; synchronous reset - + D_FF - + Out + + Description + flip-flop outputs + rotation @@ -87,7 +104,7 @@ counter; synchronous reset 13 - + Or @@ -97,7 +114,7 @@ counter; synchronous reset - + And @@ -107,7 +124,7 @@ counter; synchronous reset - + And @@ -117,16 +134,20 @@ counter; synchronous reset - + D_FF - + Out + + Description + flip-flop outputs + rotation @@ -140,7 +161,7 @@ counter; synchronous reset 12 - + Or @@ -150,7 +171,7 @@ counter; synchronous reset - + And @@ -160,7 +181,7 @@ counter; synchronous reset - + And @@ -170,16 +191,20 @@ counter; synchronous reset - + D_FF - + Out + + Description + flip-flop outputs + rotation @@ -193,7 +218,7 @@ counter; synchronous reset 11 - + Or @@ -203,7 +228,7 @@ counter; synchronous reset - + And @@ -213,7 +238,7 @@ counter; synchronous reset - + And @@ -223,26 +248,30 @@ counter; synchronous reset - + NOr - + NOr - + Not - + In + + Description + Reset + Label ~MR @@ -251,12 +280,20 @@ counter; synchronous reset pinNumber 1 + + Default + 1 + - + In + + Description + parallel enable input (active LOW) + Label ~PE @@ -265,22 +302,20 @@ counter; synchronous reset pinNumber 9 - - - - - Not - - rotation - + Default + 1 - + In + + Description + data inputs + rotation @@ -294,21 +329,15 @@ counter; synchronous reset 3 - - - - Not - - - rotation - - - - + In + + Description + data inputs + rotation @@ -322,21 +351,15 @@ counter; synchronous reset 4 - - - - Not - - - rotation - - - - + In + + Description + data inputs + rotation @@ -350,21 +373,15 @@ counter; synchronous reset 5 - - - - Not - - - rotation - - - - + In + + Description + data inputs + rotation @@ -378,11 +395,15 @@ counter; synchronous reset 6 - + In + + Description + Clock + Label CP @@ -392,7 +413,7 @@ counter; synchronous reset 2 - + And @@ -406,11 +427,15 @@ counter; synchronous reset 5 - + Out + + Description + terminal count output + rotation @@ -424,11 +449,15 @@ counter; synchronous reset 15 - + In + + Description + count enable carry input + Label CET @@ -437,6 +466,10 @@ counter; synchronous reset pinNumber 10 + + Default + 1 + @@ -448,6 +481,10 @@ counter; synchronous reset In + + Description + count enable input + Label CEP @@ -456,6 +493,10 @@ counter; synchronous reset pinNumber 7 + + Default + 1 + @@ -467,7 +508,7 @@ counter; synchronous reset - + Not @@ -487,7 +528,7 @@ counter; synchronous reset - + NOr @@ -511,7 +552,7 @@ counter; synchronous reset - + NOr @@ -535,7 +576,7 @@ counter; synchronous reset - + And @@ -545,7 +586,7 @@ counter; synchronous reset - + NOr @@ -555,7 +596,7 @@ counter; synchronous reset - + NOr @@ -594,28 +635,48 @@ counter; synchronous reset - - + + - - + + - - + + - - + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + @@ -629,77 +690,69 @@ counter; synchronous reset - - - - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + + + + + + + + + + + + + + + + + @@ -710,40 +763,24 @@ counter; synchronous reset - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - + + @@ -762,52 +799,80 @@ counter; synchronous reset - - - - - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -826,8 +891,12 @@ counter; synchronous reset - - + + + + + + @@ -845,6 +914,10 @@ counter; synchronous reset + + + + @@ -854,48 +927,12 @@ counter; synchronous reset - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + @@ -906,8 +943,8 @@ counter; synchronous reset - - + + @@ -915,15 +952,15 @@ counter; synchronous reset - - - - - + - + + + + + @@ -931,87 +968,91 @@ counter; synchronous reset - + - - - - - - + + - + + + + + - + - - + + - + - - + + - + + + + + - + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + @@ -1022,28 +1063,28 @@ counter; synchronous reset - - + + - - + + - - + + - - + + - - + + @@ -1051,167 +1092,151 @@ counter; synchronous reset - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - + + - + - - - - - - + + - + - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + @@ -1219,75 +1244,71 @@ counter; synchronous reset - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - - - - + + - - + + - - + + @@ -1298,20 +1319,20 @@ counter; synchronous reset - - + + - - + + - + - - + + \ No newline at end of file diff --git a/src/main/dig/74xx/lib/7447.dig b/src/main/dig/74xx/lib/7447.dig index 501a38afa..3e943de81 100644 --- a/src/main/dig/74xx/lib/7447.dig +++ b/src/main/dig/74xx/lib/7447.dig @@ -15,6 +15,10 @@ In + + Description + Bit 0 + Label A @@ -24,11 +28,15 @@ 7 - + In + + Description + Bit 1 + Label B @@ -38,11 +46,15 @@ 1 - + In + + Description + Bit 2 + Label C @@ -52,11 +64,15 @@ 2 - + In + + Description + Bit 3 + Label D @@ -66,112 +82,20 @@ 6 - - - - Tunnel - - - rotation - - - - NetName - a - - - - - - Tunnel - - - rotation - - - - NetName - b - - - - - - Tunnel - - - rotation - - - - NetName - c - - - - - - Tunnel - - - rotation - - - - NetName - d - - - - - - Tunnel - - - NetName - a - - - - - - Tunnel - - - NetName - b - - - - - - Tunnel - - - NetName - c - - - - - - Tunnel - - - NetName - d - - - + NAnd - + Out + + Description + ripple blanking output (LOW active) + Label ~RBO @@ -181,11 +105,15 @@ 4 - + In + + Description + ripple blanking input (LOW active) + Label ~RBI @@ -195,32 +123,32 @@ 5 - + Not - + Or - + Or - + Or - + Or - + NOr @@ -230,12 +158,12 @@ 4 - + And - + Out @@ -631,6 +559,10 @@ In + + Description + lamp test + rotation @@ -659,12 +591,12 @@ - - + + - - + + @@ -678,21 +610,17 @@ - - - - - - + + - - + + @@ -711,12 +639,8 @@ - - - - - - + + @@ -726,6 +650,10 @@ + + + + @@ -734,10 +662,6 @@ - - - - @@ -750,6 +674,10 @@ + + + + @@ -763,12 +691,8 @@ - - - - - - + + @@ -794,10 +718,6 @@ - - - - @@ -807,8 +727,12 @@ - - + + + + + + @@ -818,6 +742,10 @@ + + + + @@ -834,6 +762,10 @@ + + + + @@ -846,10 +778,6 @@ - - - - @@ -882,10 +810,6 @@ - - - - @@ -899,12 +823,8 @@ - - - - - - + + @@ -926,6 +846,10 @@ + + + + @@ -935,8 +859,8 @@ - - + + @@ -974,22 +898,18 @@ + + + + - - - - - - - - @@ -1002,6 +922,10 @@ + + + + @@ -1010,6 +934,10 @@ + + + + @@ -1026,10 +954,6 @@ - - - - @@ -1038,6 +962,14 @@ + + + + + + + + @@ -1046,10 +978,6 @@ - - - - @@ -1058,6 +986,10 @@ + + + + @@ -1107,16 +1039,12 @@ - - + + - - - - - - + + @@ -1143,8 +1071,8 @@ - - + + @@ -1158,6 +1086,10 @@ + + + + @@ -1183,8 +1115,8 @@ - - + + @@ -1195,13 +1127,17 @@ - - + + + + + + @@ -1222,10 +1158,6 @@ - - - - @@ -1247,12 +1179,12 @@ - - + + - - + + @@ -1263,12 +1195,8 @@ - - - - - - + + @@ -1276,6 +1204,10 @@ + + + + @@ -1286,6 +1218,14 @@ + + + + + + + + @@ -1395,12 +1335,8 @@ - - - - - - + + @@ -1410,10 +1346,6 @@ - - - - @@ -1424,6 +1356,10 @@ + + + + @@ -1431,8 +1367,8 @@ - - + + @@ -1511,8 +1447,8 @@ - - + + @@ -1542,22 +1478,6 @@ - - - - - - - - - - - - - - - - @@ -1587,17 +1507,41 @@ - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1612,7 +1556,7 @@ - + @@ -1654,22 +1598,6 @@ - - - - - - - - - - - - - - - - @@ -1719,12 +1647,8 @@ - - - - - - + + \ No newline at end of file diff --git a/src/main/dig/74xx/lib/7448.dig b/src/main/dig/74xx/lib/7448.dig index b22b2963b..aa01ba894 100644 --- a/src/main/dig/74xx/lib/7448.dig +++ b/src/main/dig/74xx/lib/7448.dig @@ -172,6 +172,10 @@ Out + + Description + ripple blanking output (LOW active) + Label ~RBO @@ -186,6 +190,10 @@ In + + Description + ripple blanking input (LOW active) + Label ~RBI @@ -242,7 +250,7 @@ Label - a + ~a pinNumber @@ -300,7 +308,7 @@ Label - b + ~b pinNumber @@ -343,7 +351,7 @@ Label - c + ~c pinNumber @@ -376,7 +384,7 @@ Label - d + ~d pinNumber @@ -419,7 +427,7 @@ Label - e + ~e pinNumber @@ -447,7 +455,7 @@ Label - f + ~f pinNumber @@ -485,7 +493,7 @@ Label - g + ~g pinNumber @@ -561,6 +569,10 @@ In + + Description + lamp test + rotation diff --git a/src/main/java/de/neemann/digital/draw/shapes/DILShape.java b/src/main/java/de/neemann/digital/draw/shapes/DILShape.java index 95d8ee5e1..2210153cc 100644 --- a/src/main/java/de/neemann/digital/draw/shapes/DILShape.java +++ b/src/main/java/de/neemann/digital/draw/shapes/DILShape.java @@ -69,6 +69,7 @@ public class DILShape implements Shape { int pin = dp / 4; int x = width * SIZE; int h = (pinCount / 2) * dp - SIZE; + for (int i = 0; i < pinCount / 2; i++) { int y = i * dp; graphic.drawPolygon( @@ -86,6 +87,7 @@ public class DILShape implements Shape { .add(x - pin, y + pin), Style.NORMAL); graphic.drawText(new Vector(x - pin - SIZE2 / 2, y), new Vector(x - pin + SIZE, y), map.getText(pinCount - i), Orientation.RIGHTCENTER, Style.SHAPE_PIN); } + graphic.drawPolygon( new Polygon(true) .add(pin, -SIZE) @@ -96,13 +98,14 @@ public class DILShape implements Shape { .add(x - pin, h) .add(pin, h), Style.NORMAL); graphic.drawText(new Vector(x / 2, SIZE2), new Vector(x / 2, SIZE * 2), shortName, Orientation.LEFTCENTER, Style.NORMAL_TEXT); + if (label != null && label.length() > 0) graphic.drawText(new Vector(x / 2, h + SIZE2), new Vector(x, h + SIZE2), label, Orientation.CENTERTOP, Style.NORMAL_TEXT); } private static final class ShapePinMap { private final int width; - private HashMap map; + private final HashMap map; private ArrayList notAssigned; private int pinCount;