Commit 4428d69a authored by jean-pierre charras's avatar jean-pierre charras

Pcbnew: Fix a bug when reading a netlist which forces pcbnew to read lib files...

Pcbnew: Fix a bug when reading a netlist which forces pcbnew to read lib files to find a footprint even if the right footprint is already loaded (which explains the long time to load netlists)
Netlist dialog: add option to report only most important messages. Useful for large boards.
class REPORTER: add features to allow a basic message filtering (flags to report all/warning/error messages)
Fix Bug #1214599 ( tools are deselected on Move command )
parent 0be39929
...@@ -28,7 +28,6 @@ ...@@ -28,7 +28,6 @@
#include <macros.h> #include <macros.h>
#include <reporter.h> #include <reporter.h>
REPORTER& REPORTER::Report( const char* aText ) REPORTER& REPORTER::Report( const char* aText )
{ {
Report( FROM_UTF8( aText ) ); Report( FROM_UTF8( aText ) );
......
EESchema-LIBRARY Version 2.3 Date: 07/08/2013 15:43:07 EESchema-LIBRARY Version 2.3
#encoding utf-8 #encoding utf-8
# #
# 4003APG120 # 4003APG120
......
Cmp-Mod V01 Created by CvPCB (2011-03-30 BZR 2935)-testing date = 02/04/2011 13:22:13 Cmp-Mod V01 Created by CvPcb (2013-08-20 BZR 4294)-product date = 21/08/2013 18:12:43
BeginCmp BeginCmp
TimeStamp = /322D3011; TimeStamp = /322D3011;
......
This source diff could not be displayed because it is too large. You can view the blob instead.
# EESchema Netlist Version 1.1 created 23/01/2012 08:38:24 (export (version D)
( (design
( /4A087146 $noname U3 74LS541 {Lib=74LS541} (source F:/kicad/share/demos/interf_u/interf_u.sch)
( 1 GND ) (date "21/08/2013 18:14:13")
( 2 /PC-A1 ) (tool "eeschema (2013-08-20 BZR 4294)-product"))
( 3 /PC-A0 ) (components
( 4 /PC-A2 ) (comp (ref U3)
( 5 /PC-A3 ) (value 74LS541)
( 6 /PC-IOW ) (footprint DIP-20__300)
( 7 /PC-IOR ) (libsource (lib 74xx) (part 74LS541))
( 8 /PC-RST ) (sheetpath (names /) (tstamps /))
( 9 /PC-RST ) (tstamp 4A087146))
( 10 GND ) (comp (ref JP1)
( 11 ? ) (value CONN_8X2)
( 12 /RSTL ) (footprint pin_array_8x2)
( 13 /PC-RD ) (libsource (lib conn) (part CONN_8X2))
( 14 /PC-WR ) (sheetpath (names /) (tstamps /))
( 15 N-000111 ) (tstamp 32568D1E))
( 16 N-000110 ) (comp (ref RR1)
( 17 N-000109 ) (value 9x1K)
( 18 N-000108 ) (footprint r_pack9)
( 19 GND ) (libsource (lib device) (part RR9))
( 20 VCC ) (sheetpath (names /) (tstamps /))
) (tstamp 325679C1))
( /32568D1E pin_array_8x2 JP1 CONN_8X2 {Lib=CONN_8X2} (comp (ref P1)
( 1 GND ) (value DB25FEMELLE)
( 2 /REF10 ) (footprint DB25FC)
( 3 GND ) (libsource (lib conn) (part DB25))
( 4 /REF11 ) (sheetpath (names /) (tstamps /))
( 5 GND ) (tstamp 3256759C))
( 6 /REF7 ) (comp (ref R3)
( 7 GND ) (value 10K)
( 8 /REF9 ) (footprint R3)
( 9 GND ) (libsource (lib device) (part R))
( 10 /REF6 ) (sheetpath (names /) (tstamps /))
( 11 GND ) (tstamp 324002E6))
( 12 /REF8 ) (comp (ref U5)
( 13 GND ) (value 628128)
( 14 /REF4 ) (footprint DIP-32__600)
( 15 GND ) (libsource (lib memory) (part 628128))
( 16 /REF5 ) (sheetpath (names /) (tstamps /))
) (tstamp 3240023F))
( /325679C1 r_pack9 RR1 9x1K {Lib=RR9} (comp (ref C3)
( 1 VCC ) (value 47pF)
( 2 /REF5 ) (footprint C1)
( 3 /REF4 ) (libsource (lib device) (part C))
( 4 /REF8 ) (sheetpath (names /) (tstamps /))
( 5 /REF6 ) (tstamp 32307ED4))
( 6 /REF9 ) (comp (ref C2)
( 7 /REF7 ) (value 47pF)
( 8 /REF11 ) (footprint C1)
( 9 /REF10 ) (libsource (lib device) (part C))
( 10 ? ) (sheetpath (names /) (tstamps /))
) (tstamp 32307ECF))
( /3256759C DB25FC P1 DB25FEMELLE {Lib=DB25} (comp (ref X1)
( 1 /STROBE ) (value 8MHz)
( 2 /BIT0 ) (footprint HC-18UH)
( 3 /BIT1 ) (libsource (lib device) (part CRYSTAL))
( 4 /BIT2 ) (sheetpath (names /) (tstamps /))
( 5 /BIT3 ) (tstamp 32307EC0))
( 6 /BIT4 ) (comp (ref R2)
( 7 /BIT5 ) (value 1K)
( 8 /BIT6 ) (footprint R3)
( 9 /BIT7 ) (libsource (lib device) (part R))
( 10 /ACK ) (sheetpath (names /) (tstamps /))
( 11 /BUST+ ) (tstamp 32307EAA))
( 12 /PE+ ) (comp (ref R1)
( 13 /SLCT+ ) (value 100K)
( 14 /AUTOFD- ) (footprint R3)
( 15 /ERROR- ) (libsource (lib device) (part R))
( 16 /INIT- ) (sheetpath (names /) (tstamps /))
( 17 /SLCTIN- ) (tstamp 32307EA1))
( 18 GND ) (comp (ref C1)
( 19 GND ) (value 47uF)
( 20 GND ) (footprint CP6)
( 21 GND ) (libsource (lib device) (part CP))
( 22 GND ) (sheetpath (names /) (tstamps /))
( 23 GND ) (tstamp 32307DE2))
( 24 GND ) (comp (ref C4)
( 25 GND ) (value 47uF)
) (footprint CP6)
( /324002E6 R3 R3 10K {Lib=R} (libsource (lib device) (part CP))
( 1 N-000072 ) (sheetpath (names /) (tstamps /))
( 2 VCC ) (tstamp 32307DCF))
) (comp (ref C5)
( /3240023F 32dip600 U5 628128 {Lib=628128} (value 47uF)
( 2 /MA16 ) (footprint CP6)
( 3 /MA14 ) (libsource (lib device) (part CP))
( 4 /MA12 ) (sheetpath (names /) (tstamps /))
( 5 /MA7 ) (tstamp 32307DCA))
( 6 /MA6 ) (comp (ref C6)
( 7 /MA5 ) (value 47uF)
( 8 /MA4 ) (footprint CP6)
( 9 /MA3 ) (libsource (lib device) (part CP))
( 10 /MA2 ) (sheetpath (names /) (tstamps /))
( 11 /MA1 ) (tstamp 32307DC0))
( 12 /MA0 ) (comp (ref U2)
( 13 /MD0 ) (value 74LS688)
( 14 /MD1 ) (footprint DIP-20__300)
( 15 /MD2 ) (libsource (lib 74xx) (part 74LS688))
( 16 GND ) (sheetpath (names /) (tstamps /))
( 17 /MD3 ) (tstamp 322D35B4))
( 18 /MD4 ) (comp (ref U9)
( 19 /MD5 ) (value 4003APG120)
( 20 /MD6 ) (footprint PGA120)
( 21 /MD7 ) (fields
( 22 /CS1- ) (field (name price) 50$)
( 23 /MA10 ) (field (name Field5) test))
( 24 /OE- ) (libsource (lib xilinx) (part 4003APG120))
( 25 /MA11 ) (sheetpath (names /) (tstamps /))
( 26 /MA9 ) (tstamp 322D32FA))
( 27 /MA8 ) (comp (ref D2)
( 28 /MA13 ) (value LED)
( 29 /WR- ) (footprint LEDV)
( 30 N-000072 ) (libsource (lib device) (part LED))
( 31 /MA15 ) (sheetpath (names /) (tstamps /))
( 32 VCC ) (tstamp 322D32BE))
) (comp (ref D1)
( /32307ED4 C1 C3 47pF {Lib=C} (value LED)
( 1 N-000146 ) (footprint LEDV)
( 2 GND ) (libsource (lib device) (part LED))
) (sheetpath (names /) (tstamps /))
( /32307ECF C1 C2 47pF {Lib=C} (tstamp 322D32AC))
( 1 N-000145 ) (comp (ref R5)
( 2 GND ) (value 330)
) (footprint R3)
( /32307EC0 HC-18UH X1 8MHz {Lib=CRYSTAL} (libsource (lib device) (part R))
( 1 N-000145 ) (sheetpath (names /) (tstamps /))
( 2 N-000146 ) (tstamp 322D32A0))
) (comp (ref R4)
( /32307EAA R3 R2 1K {Lib=R} (value 330)
( 1 /8MH-OUT ) (footprint R3)
( 2 N-000146 ) (libsource (lib device) (part R))
) (sheetpath (names /) (tstamps /))
( /32307EA1 R3 R1 100K {Lib=R} (tstamp 322D3295))
( 1 N-000146 ) (comp (ref U8)
( 2 N-000145 ) (value EP600)
) (footprint DIP-24__300)
( /32307DE2 CP6 C1 47uF {Lib=CP} (libsource (lib special) (part EP600))
( 1 VCC ) (sheetpath (names /) (tstamps /))
( 2 GND ) (tstamp 322D321C))
) (comp (ref U1)
( /32307DCF CP6 C4 47uF {Lib=CP} (value 74LS245)
( 1 VCC ) (footprint DIP-20__300)
( 2 GND ) (libsource (lib 74xx) (part 74LS245))
) (sheetpath (names /) (tstamps /))
( /32307DCA CP6 C5 47uF {Lib=CP} (tstamp 322D31F4))
( 1 VCC ) (comp (ref BUS1)
( 2 GND ) (value BUSPC)
) (footprint BUS_PC)
( /32307DC0 CP6 C6 47uF {Lib=CP} (libsource (lib conn) (part BUSPC))
( 1 VCC ) (sheetpath (names /) (tstamps /))
( 2 GND ) (tstamp 322D3011)))
) (libparts
( /322D35B4 20dip300 U2 74LS688 {Lib=74LS688} (libpart (lib device) (part C)
( 1 /PC-AEN ) (description "Condensateur non polarise")
( 2 /PC-A5 ) (footprints
( 3 /REF5 ) (fp SM*)
( 4 /PC-A8 ) (fp C?)
( 5 /REF8 ) (fp C1-1))
( 6 /PC-A9 ) (fields
( 7 /REF9 ) (field (name Reference) C)
( 8 /PC-A11 ) (field (name Value) C))
( 9 /REF11 ) (pins
( 10 GND ) (pin (num 1) (name ~) (type passive))
( 11 /PC-A10 ) (pin (num 2) (name ~) (type passive))))
( 12 /REF10 ) (libpart (lib device) (part CP)
( 13 /PC-A7 ) (description "Condensateur polarise")
( 14 /REF7 ) (footprints
( 15 /PC-A6 ) (fp CP*)
( 16 /REF6 ) (fp SM*))
( 17 /PC-A4 ) (fields
( 18 /REF4 ) (field (name Reference) C)
( 19 /MATCHL ) (field (name Value) CP))
( 20 VCC ) (pins
) (pin (num 1) (name ~) (type passive))
( /322D32FA PGA120 U9 4003APG120 {Lib=4003APG120} (pin (num 2) (name ~) (type passive))))
( A1 ? ) (libpart (lib device) (part CRYSTAL)
( A2 ? ) (fields
( A3 ? ) (field (name Reference) X)
( A4 /MA9 ) (field (name Value) CRYSTAL))
( A5 /MD1 ) (pins
( A6 /MD3 ) (pin (num 1) (name 1) (type passive))
( A7 /MD4 ) (pin (num 2) (name 2) (type passive))))
( A8 /MD5 ) (libpart (lib device) (part LED)
( A9 /MD6 ) (footprints
( A10 /CS1- ) (fp LED-3MM)
( A11 /MA0 ) (fp LED-5MM)
( A12 /STROBE ) (fp LED-10MM)
( A13 /WR- ) (fp LED-0603)
( B1 ? ) (fp LED-0805)
( B2 /MA1 ) (fp LED-1206)
( B3 /MA7 ) (fp LEDV))
( B4 ? ) (fields
( B5 ? ) (field (name Reference) D)
( B6 /MD2 ) (field (name Value) LED))
( B7 GND ) (pins
( B8 /MD7 ) (pin (num 1) (name A) (type passive))
( B9 /OE- ) (pin (num 2) (name K) (type passive))))
( B10 ? ) (libpart (lib device) (part R)
( B11 VCC ) (description Resistance)
( B12 VCC ) (footprints
( B13 ? ) (fp R?)
( C1 /MA13 ) (fp SM0603)
( C2 /MA3 ) (fp SM0805)
( C3 VCC ) (fp R?-*)
( C4 GND ) (fp SM1206))
( C5 ? ) (fields
( C6 /MD0 ) (field (name Reference) R)
( C8 /MA16 ) (field (name Value) R))
( C9 /MA10 ) (pins
( C10 GND ) (pin (num 1) (name ~) (type passive))
( C11 VCC ) (pin (num 2) (name ~) (type passive))))
( C12 /AUTOFD- ) (libpart (lib device) (part RR9)
( C13 /MA5 ) (fields
( D1 /MA14 ) (field (name Reference) RR)
( D2 /MA11 ) (field (name Value) RR9))
( D3 /MA2 ) (pins
( D11 VCC ) (pin (num 1) (name COM) (type passive))
( D12 /BIT0 ) (pin (num 2) (name 2) (type passive))
( D13 /ERROR- ) (pin (num 3) (name 3) (type passive))
( E1 /MA4 ) (pin (num 4) (name 4) (type passive))
( E2 ? ) (pin (num 5) (name 5) (type passive))
( E3 ? ) (pin (num 6) (name 6) (type passive))
( E11 ? ) (pin (num 7) (name 7) (type passive))
( E12 /INIT- ) (pin (num 8) (name 8) (type passive))
( E13 /BIT1 ) (pin (num 9) (name 9) (type passive))
( F1 /MA15 ) (pin (num 10) (name 10) (type passive))))
( F2 /MA6 ) (libpart (lib conn) (part BUSPC)
( F3 /MA12 ) (description "Connecteur BUS ISA 8 Bits")
( F11 /SLCTIN- ) (fields
( F12 /BIT2 ) (field (name Reference) BUS)
( F13 /LED2 ) (field (name Value) BUSPC))
( G1 /MA8 ) (pins
( G2 GND ) (pin (num 1) (name GND) (type passive))
( G11 GND ) (pin (num 2) (name RESET) (type output))
( G12 VCC ) (pin (num 3) (name VCC) (type passive))
( G13 /BIT3 ) (pin (num 4) (name INQ2) (type passive))
( H1 /PC-A8 ) (pin (num 5) (name -5V) (type passive))
( H2 /PC-A7 ) (pin (num 6) (name DRQ2) (type passive))
( H3 /PC-A4 ) (pin (num 7) (name -12V) (type passive))
( H11 /BIT7 ) (pin (num 8) (name UNUSED) (type passive))
( H12 /BIT5 ) (pin (num 9) (name +12V) (type passive))
( H13 /BIT4 ) (pin (num 10) (name GND) (type passive))
( J1 /PC-A6 ) (pin (num 11) (name MEM) (type output))
( J2 /PC-A5 ) (pin (num 12) (name MEM) (type output))
( J3 ? ) (pin (num 13) (name IOW) (type output))
( J11 ? ) (pin (num 14) (name IOR) (type output))
( J12 /BUST+ ) (pin (num 15) (name DACK3) (type passive))
( J13 /BIT6 ) (pin (num 16) (name DRQ3) (type passive))
( K1 /8MH-OUT ) (pin (num 17) (name DACK1) (type passive))
( K2 /PC-A3 ) (pin (num 18) (name DRQ1) (type passive))
( K3 GND ) (pin (num 19) (name DACK0) (type passive))
( K11 GND ) (pin (num 20) (name CLK) (type output))
( K12 ? ) (pin (num 21) (name IRQ7) (type passive))
( K13 /ACK ) (pin (num 22) (name IRQ6) (type passive))
( L1 N-000145 ) (pin (num 23) (name IRQ5) (type passive))
( L2 /SEL_LPT ) (pin (num 24) (name IRQ4) (type passive))
( L3 VCC ) (pin (num 25) (name IRQ3) (type passive))
( L4 /CLKLCA ) (pin (num 26) (name DACK2) (type passive))
( L5 ? ) (pin (num 27) (name TC) (type passive))
( L6 ? ) (pin (num 28) (name ALE) (type output))
( L7 GND ) (pin (num 29) (name VCC) (type passive))
( L8 /PC-A10 ) (pin (num 30) (name OSC) (type output))
( L9 ? ) (pin (num 31) (name GND) (type passive))
( L10 VCC ) (pin (num 32) (name IO) (type passive))
( L11 /DONE ) (pin (num 33) (name DB7) (type 3state))
( L12 /D7 ) (pin (num 34) (name DB6) (type 3state))
( L13 /PE+ ) (pin (num 35) (name DB5) (type 3state))
( M1 ? ) (pin (num 36) (name DB4) (type 3state))
( M2 ? ) (pin (num 37) (name DB3) (type 3state))
( M3 /LED1 ) (pin (num 38) (name DB2) (type 3state))
( M4 /CLKLCA ) (pin (num 39) (name DB1) (type 3state))
( M5 /PC-A2 ) (pin (num 40) (name DB0) (type 3state))
( M6 /PC-A0 ) (pin (num 41) (name IO_READY) (type passive))
( M7 VCC ) (pin (num 42) (name AEN) (type output))
( M8 /PC-RD ) (pin (num 43) (name BA19) (type 3state))
( M9 /D3 ) (pin (num 44) (name BA18) (type 3state))
( M10 /D4 ) (pin (num 45) (name BA17) (type 3state))
( M11 /D6 ) (pin (num 46) (name BA16) (type 3state))
( M12 /PROG- ) (pin (num 47) (name BA15) (type 3state))
( N1 ? ) (pin (num 48) (name BA14) (type 3state))
( N2 /D0 ) (pin (num 49) (name BA13) (type 3state))
( N3 ? ) (pin (num 50) (name BA12) (type 3state))
( N4 /PC-A1 ) (pin (num 51) (name BA11) (type 3state))
( N5 ? ) (pin (num 52) (name BA10) (type 3state))
( N6 /PC-WR ) (pin (num 53) (name BA09) (type 3state))
( N7 /PC-A9 ) (pin (num 54) (name BA08) (type 3state))
( N8 /D1 ) (pin (num 55) (name BA07) (type 3state))
( N9 /D2 ) (pin (num 56) (name BA06) (type 3state))
( N10 /PC-AEN ) (pin (num 57) (name BA05) (type 3state))
( N11 /D5 ) (pin (num 58) (name BA04) (type 3state))
( N12 ? ) (pin (num 59) (name BA03) (type 3state))
( N13 /SLCT+ ) (pin (num 60) (name BA02) (type 3state))
) (pin (num 61) (name BA01) (type 3state))
( /322D32BE LEDV D2 LED {Lib=LED} (pin (num 62) (name BA00) (type 3state))))
( 1 N-000103 ) (libpart (lib conn) (part CONN_8X2)
( 2 GND ) (description "ymbole general de connecteur")
) (fields
( /322D32AC LEDV D1 LED {Lib=LED} (field (name Reference) P)
( 1 N-000107 ) (field (name Value) CONN_8X2))
( 2 GND ) (pins
) (pin (num 1) (name ~) (type passive))
( /322D32A0 R3 R5 330 {Lib=R} (pin (num 2) (name ~) (type passive))
( 1 N-000103 ) (pin (num 3) (name ~) (type passive))
( 2 /LED2 ) (pin (num 4) (name ~) (type passive))
) (pin (num 5) (name ~) (type passive))
( /322D3295 R3 R4 330 {Lib=R} (pin (num 6) (name ~) (type passive))
( 1 N-000107 ) (pin (num 7) (name ~) (type passive))
( 2 /LED1 ) (pin (num 8) (name ~) (type passive))
) (pin (num 9) (name ~) (type passive))
( /322D321C 24dip300 U8 EP600 {Lib=EP600} (pin (num 10) (name ~) (type passive))
( 1 GND ) (pin (num 11) (name ~) (type passive))
( 2 /MATCHL ) (pin (num 12) (name ~) (type passive))
( 3 N-000108 ) (pin (num 13) (name ~) (type passive))
( 4 N-000109 ) (pin (num 14) (name ~) (type passive))
( 5 N-000110 ) (pin (num 15) (name ~) (type passive))
( 6 N-000111 ) (pin (num 16) (name ~) (type passive))))
( 7 /PC-WR ) (libpart (lib conn) (part DB25)
( 8 ? ) (footprints
( 9 ? ) (fp DB25*))
( 10 ? ) (fields
( 11 /RSTL ) (field (name Reference) J)
( 12 GND ) (field (name Value) DB25))
( 13 /WR_REG ) (pins
( 14 /PC-RD ) (pin (num 1) (name 1) (type passive))
( 15 /WR_REG ) (pin (num 2) (name 2) (type passive))
( 16 /CLKLCA ) (pin (num 3) (name 3) (type passive))
( 17 /DIR ) (pin (num 4) (name 4) (type passive))
( 18 /SEL_LPT ) (pin (num 5) (name 5) (type passive))
( 19 /PROG- ) (pin (num 6) (name 6) (type passive))
( 20 /DONE ) (pin (num 7) (name 7) (type passive))
( 21 /D0 ) (pin (num 8) (name 8) (type passive))
( 22 /ENBBUF ) (pin (num 9) (name 9) (type passive))
( 23 VCC ) (pin (num 10) (name 10) (type passive))
( 24 VCC ) (pin (num 11) (name 11) (type passive))
) (pin (num 12) (name 12) (type passive))
( /322D31F4 20dip300 U1 74LS245 {Lib=74LS245} (pin (num 13) (name 13) (type passive))
( 1 /DIR ) (pin (num 14) (name P14) (type passive))
( 2 /PC-DB0 ) (pin (num 15) (name P15) (type passive))
( 3 /PC-DB1 ) (pin (num 16) (name P16) (type passive))
( 4 /PC-DB2 ) (pin (num 17) (name P17) (type passive))
( 5 /PC-DB3 ) (pin (num 18) (name P18) (type passive))
( 6 /PC-DB4 ) (pin (num 19) (name P19) (type passive))
( 7 /PC-DB5 ) (pin (num 20) (name P20) (type passive))
( 8 /PC-DB6 ) (pin (num 21) (name P21) (type passive))
( 9 /PC-DB7 ) (pin (num 22) (name P22) (type passive))
( 10 GND ) (pin (num 23) (name P23) (type passive))
( 11 /D7 ) (pin (num 24) (name P24) (type passive))
( 12 /D6 ) (pin (num 25) (name P25) (type passive))))
( 13 /D5 ) (libpart (lib 74xx) (part 74LS245)
( 14 /D4 ) (description "Octal BUS Transceivers, 3 State out")
( 15 /D3 ) (fields
( 16 /D2 ) (field (name Reference) U)
( 17 /D1 ) (field (name Value) 74LS245))
( 18 /D0 ) (pins
( 19 /ENBBUF ) (pin (num 1) (name A->B) (type input))
( 20 VCC ) (pin (num 2) (name A0) (type 3state))
) (pin (num 3) (name A1) (type 3state))
( /322D3011 BUS_PC BUS1 BUSPC {Lib=BUSPC} (pin (num 4) (name A2) (type 3state))
( 1 GND ) (pin (num 5) (name A3) (type 3state))
( 2 /PC-RST ) (pin (num 6) (name A4) (type 3state))
( 3 VCC ) (pin (num 7) (name A5) (type 3state))
( 4 ? ) (pin (num 8) (name A6) (type 3state))
( 5 ? ) (pin (num 9) (name A7) (type 3state))
( 6 ? ) (pin (num 10) (name GND) (type power_in))
( 7 ? ) (pin (num 11) (name B7) (type 3state))
( 8 ? ) (pin (num 12) (name B6) (type 3state))
( 9 ? ) (pin (num 13) (name B5) (type 3state))
( 10 ? ) (pin (num 14) (name B4) (type 3state))
( 11 ? ) (pin (num 15) (name B3) (type 3state))
( 12 ? ) (pin (num 16) (name B2) (type 3state))
( 13 /PC-IOW ) (pin (num 17) (name B1) (type 3state))
( 14 /PC-IOR ) (pin (num 18) (name B0) (type 3state))
( 15 ? ) (pin (num 19) (name CE) (type input))
( 16 ? ) (pin (num 20) (name VCC) (type power_in))))
( 17 ? ) (libpart (lib 74xx) (part 74LS541)
( 18 ? ) (description "8bits Buffer/Line Driver 3 state Out")
( 19 ? ) (fields
( 20 ? ) (field (name Reference) U)
( 21 ? ) (field (name Value) 74LS541))
( 22 ? ) (pins
( 23 ? ) (pin (num 1) (name G1) (type input))
( 24 ? ) (pin (num 2) (name A0) (type input))
( 25 ? ) (pin (num 3) (name A1) (type input))
( 26 ? ) (pin (num 4) (name A2) (type input))
( 27 ? ) (pin (num 5) (name A3) (type input))
( 28 ? ) (pin (num 6) (name A4) (type input))
( 29 VCC ) (pin (num 7) (name A5) (type input))
( 30 ? ) (pin (num 8) (name A6) (type input))
( 31 GND ) (pin (num 9) (name A7) (type input))
( 32 ? ) (pin (num 10) (name GND) (type power_in))
( 33 /PC-DB7 ) (pin (num 11) (name Y7) (type 3state))
( 34 /PC-DB6 ) (pin (num 12) (name Y6) (type 3state))
( 35 /PC-DB5 ) (pin (num 13) (name Y5) (type 3state))
( 36 /PC-DB4 ) (pin (num 14) (name Y4) (type 3state))
( 37 /PC-DB3 ) (pin (num 15) (name Y3) (type 3state))
( 38 /PC-DB2 ) (pin (num 16) (name Y2) (type 3state))
( 39 /PC-DB1 ) (pin (num 17) (name Y1) (type 3state))
( 40 /PC-DB0 ) (pin (num 18) (name Y0) (type 3state))
( 41 ? ) (pin (num 19) (name G2) (type input))
( 42 /PC-AEN ) (pin (num 20) (name VCC) (type power_in))))
( 43 ? ) (libpart (lib 74xx) (part 74LS688)
( 44 ? ) (description "8 bits Comparator")
( 45 ? ) (fields
( 46 ? ) (field (name Reference) U)
( 47 ? ) (field (name Value) 74LS688))
( 48 ? ) (pins
( 49 ? ) (pin (num 1) (name G) (type input))
( 50 ? ) (pin (num 2) (name P0) (type input))
( 51 /PC-A11 ) (pin (num 3) (name R0) (type input))
( 52 /PC-A10 ) (pin (num 4) (name P1) (type input))
( 53 /PC-A9 ) (pin (num 5) (name R1) (type input))
( 54 /PC-A8 ) (pin (num 6) (name P2) (type input))
( 55 /PC-A7 ) (pin (num 7) (name R2) (type input))
( 56 /PC-A6 ) (pin (num 8) (name P3) (type input))
( 57 /PC-A5 ) (pin (num 9) (name R3) (type input))
( 58 /PC-A4 ) (pin (num 10) (name GND) (type power_in))
( 59 /PC-A3 ) (pin (num 11) (name P4) (type input))
( 60 /PC-A2 ) (pin (num 12) (name R4) (type input))
( 61 /PC-A1 ) (pin (num 13) (name P5) (type input))
( 62 /PC-A0 ) (pin (num 14) (name R5) (type input))
) (pin (num 15) (name P6) (type input))
) (pin (num 16) (name R6) (type input))
* (pin (num 17) (name P7) (type input))
{ Allowed footprints by component: (pin (num 18) (name R7) (type input))
$component P1 (pin (num 19) (name P=R) (type output))
DB25* (pin (num 20) (name VCC) (type power_in))))
$endlist (libpart (lib memory) (part 628128)
$component R3 (description "RAM 128 Ko")
R? (fields
SM0603 (field (name Reference) U)
SM0805 (field (name Value) 628128))
R?-* (pins
SM1206 (pin (num 2) (name A16) (type input))
$endlist (pin (num 3) (name A14) (type input))
$component C3 (pin (num 4) (name A12) (type input))
SM* (pin (num 5) (name A7) (type input))
C? (pin (num 6) (name A6) (type input))
C1-1 (pin (num 7) (name A5) (type input))
$endlist (pin (num 8) (name A4) (type input))
$component C2 (pin (num 9) (name A3) (type input))
SM* (pin (num 10) (name A2) (type input))
C? (pin (num 11) (name A1) (type input))
C1-1 (pin (num 12) (name A0) (type input))
$endlist (pin (num 13) (name Q0) (type 3state))
$component R2 (pin (num 14) (name Q1) (type 3state))
R? (pin (num 15) (name Q2) (type 3state))
SM0603 (pin (num 16) (name GND) (type power_in))
SM0805 (pin (num 17) (name Q3) (type 3state))
R?-* (pin (num 18) (name Q4) (type 3state))
SM1206 (pin (num 19) (name Q5) (type 3state))
$endlist (pin (num 20) (name Q6) (type 3state))
$component R1 (pin (num 21) (name Q7) (type 3state))
R? (pin (num 22) (name CS1) (type input))
SM0603 (pin (num 23) (name A10) (type input))
SM0805 (pin (num 24) (name OE) (type input))
R?-* (pin (num 25) (name A11) (type input))
SM1206 (pin (num 26) (name A9) (type input))
$endlist (pin (num 27) (name A8) (type input))
$component C1 (pin (num 28) (name A13) (type input))
CP* (pin (num 29) (name WR) (type input))
SM* (pin (num 30) (name CS2) (type input))
$endlist (pin (num 31) (name A15) (type input))
$component C4 (pin (num 32) (name VCC) (type power_in))))
CP* (libpart (lib xilinx) (part 4003APG120)
SM* (fields
$endlist (field (name Reference) U)
$component C5 (field (name Value) 4003APG120)
CP* (field (name Footprint) PGA120))
SM* (pins
$endlist (pin (num A1) (name NC) (type passive))
$component C6 (pin (num A2) (name NC) (type passive))
CP* (pin (num A3) (name NC) (type passive))
SM* (pin (num A4) (name P) (type passive))
$endlist (pin (num A5) (name P) (type passive))
$component D2 (pin (num A6) (name P) (type passive))
LED-3MM (pin (num A7) (name P) (type passive))
LED-5MM (pin (num A8) (name P) (type passive))
LED-10MM (pin (num A9) (name P) (type passive))
LED-0603 (pin (num A10) (name P) (type passive))
LED-0805 (pin (num A11) (name P) (type passive))
LED-1206 (pin (num A12) (name SGCK2) (type passive))
LEDV (pin (num A13) (name HDC) (type output))
$endlist (pin (num B1) (name NC) (type passive))
$component D1 (pin (num B2) (name PGCK1/A16) (type passive))
LED-3MM (pin (num B3) (name P/A17) (type passive))
LED-5MM (pin (num B4) (name TCK) (type passive))
LED-10MM (pin (num B5) (name TMS) (type passive))
LED-0603 (pin (num B6) (name P) (type passive))
LED-0805 (pin (num B7) (name GND) (type power_in))
LED-1206 (pin (num B8) (name P) (type passive))
LEDV (pin (num B9) (name P) (type passive))
$endlist (pin (num B10) (name NC) (type passive))
$component R5 (pin (num B11) (name M1) (type input))
R? (pin (num B12) (name M2) (type BiDi))
SM0603 (pin (num B13) (name NC) (type passive))
SM0805 (pin (num C1) (name P/A12) (type passive))
R?-* (pin (num C2) (name P/A14) (type passive))
SM1206 (pin (num C3) (name VCC) (type power_in))
$endlist (pin (num C4) (name GND) (type power_in))
$component R4 (pin (num C5) (name TDI) (type passive))
R? (pin (num C6) (name P) (type passive))
SM0603 (pin (num C8) (name P) (type passive))
SM0805 (pin (num C9) (name P) (type passive))
R?-* (pin (num C10) (name GND) (type power_in))
SM1206 (pin (num C11) (name M0) (type input))
$endlist (pin (num C12) (name PGCK2) (type passive))
$endfootprintlist (pin (num C13) (name LDC) (type output))
} (pin (num D1) (name P/A11) (type passive))
{ Pin List by Nets (pin (num D2) (name P/A13) (type passive))
Net 15 "/PC-RST" "PC-RST" (pin (num D3) (name SGCK1) (type passive))
BUS1 2 (pin (num D11) (name VCC) (type power_in))
U3 8 (pin (num D12) (name P) (type passive))
U3 9 (pin (num D13) (name P) (type passive))
Net 16 "/PC-IOR" "PC-IOR" (pin (num E1) (name P) (type passive))
BUS1 14 (pin (num E2) (name NC) (type passive))
U3 7 (pin (num E3) (name NC) (type passive))
Net 17 "/PC-IOW" "PC-IOW" (pin (num E11) (name NC) (type passive))
U3 6 (pin (num E12) (name P) (type passive))
BUS1 13 (pin (num E13) (name P) (type passive))
Net 19 "/PC-A1" "PC-A1" (pin (num F1) (name P/A9) (type passive))
BUS1 61 (pin (num F2) (name P) (type passive))
U9 N4 (pin (num F3) (name P/A10) (type passive))
U3 2 (pin (num F11) (name P) (type passive))
Net 20 "/PC-A0" "PC-A0" (pin (num F12) (name P) (type BiDi))
U9 M6 (pin (num F13) (name INIT) (type BiDi))
BUS1 62 (pin (num G1) (name P/A8) (type passive))
U3 3 (pin (num G2) (name GND) (type power_in))
Net 21 "GND" "GND" (pin (num G11) (name GND) (type power_in))
P1 18 (pin (num G12) (name VCC) (type power_in))
U9 G11 (pin (num G13) (name P) (type passive))
U9 K11 (pin (num H1) (name P/A7) (type passive))
U9 C10 (pin (num H2) (name P/A6) (type passive))
U9 G2 (pin (num H3) (name P) (type passive))
BUS1 1 (pin (num H11) (name P) (type passive))
D2 2 (pin (num H12) (name P) (type passive))
U1 10 (pin (num H13) (name P) (type passive))
U9 C4 (pin (num J1) (name P) (type passive))
P1 20 (pin (num J2) (name P/A4) (type passive))
D1 2 (pin (num J3) (name NC) (type passive))
U9 K3 (pin (num J11) (name NC) (type passive))
U8 1 (pin (num J12) (name P) (type passive))
U9 L7 (pin (num J13) (name P) (type passive))
U9 B7 (pin (num K1) (name P/A5) (type passive))
JP1 13 (pin (num K2) (name P/CS1/A2) (type passive))
JP1 11 (pin (num K3) (name GND) (type power_in))
P1 25 (pin (num K11) (name GND) (type power_in))
U5 16 (pin (num K12) (name NC) (type passive))
P1 24 (pin (num K13) (name P) (type passive))
P1 23 (pin (num L1) (name P/A3) (type passive))
JP1 15 (pin (num L2) (name P/A0/WS) (type passive))
U8 12 (pin (num L3) (name VCC) (type power_in))
P1 22 (pin (num L4) (name CCLK) (type input))
P1 21 (pin (num L5) (name NC) (type passive))
C1 2 (pin (num L6) (name P/D2) (type passive))
C4 2 (pin (num L7) (name GND) (type power_in))
C5 2 (pin (num L8) (name P) (type passive))
C6 2 (pin (num L9) (name NC) (type passive))
U2 10 (pin (num L10) (name VCC) (type power_in))
C3 2 (pin (num L11) (name DONE) (type output))
U3 10 (pin (num L12) (name SGCK3) (type passive))
U3 19 (pin (num L13) (name P) (type passive))
U3 1 (pin (num M1) (name NC) (type passive))
JP1 7 (pin (num M2) (name TDO) (type passive))
JP1 5 (pin (num M3) (name DOUT-SGKC4) (type output))
JP1 3 (pin (num M4) (name NC) (type passive))
JP1 1 (pin (num M5) (name P/D1) (type passive))
C2 2 (pin (num M6) (name P) (type passive))
BUS1 31 (pin (num M7) (name VCC) (type power_in))
P1 19 (pin (num M8) (name P/D4) (type passive))
JP1 9 (pin (num M9) (name P/D5) (type passive))
Net 22 "VCC" "VCC" (pin (num M10) (name P/D6) (type passive))
C1 1 (pin (num M11) (name P/D7) (type passive))
C4 1 (pin (num M12) (name PROG) (type input))
U8 24 (pin (num N1) (name PGCK4/A1) (type passive))
C5 1 (pin (num N2) (name DIN) (type BiDi))
U8 23 (pin (num N3) (name P/RCLK/BSY/RDY) (type passive))
C6 1 (pin (num N4) (name P) (type passive))
U2 20 (pin (num N5) (name P) (type passive))
U9 B12 (pin (num N6) (name P/RS) (type passive))
U9 L3 (pin (num N7) (name P/D3) (type passive))
U9 M7 (pin (num N8) (name P) (type passive))
U3 20 (pin (num N9) (name P) (type passive))
U9 D11 (pin (num N10) (name P/CS0) (type passive))
U1 20 (pin (num N11) (name P) (type passive))
U9 C11 (pin (num N12) (name NC) (type passive))
U9 B11 (pin (num N13) (name PGCK3) (type passive))))
R3 2 (libpart (lib special) (part EP600)
BUS1 3 (fields
BUS1 29 (field (name Reference) U)
U9 G12 (field (name Value) EP600))
U5 32 (pins
U9 C3 (pin (num 1) (name CLK1) (type input))
U9 L10 (pin (num 2) (name IN2) (type input))
RR1 1 (pin (num 3) (name I/O3) (type passive))
Net 23 "/PC-AEN" "PC-AEN" (pin (num 4) (name I/O4) (type passive))
U9 N10 (pin (num 5) (name I/O5) (type passive))
BUS1 42 (pin (num 6) (name I/O6) (type passive))
U2 1 (pin (num 7) (name I/O7) (type passive))
Net 52 "/MA8" "MA8" (pin (num 8) (name I/O8) (type passive))
U9 G1 (pin (num 9) (name I/O9) (type passive))
U5 27 (pin (num 10) (name I/O10) (type passive))
Net 53 "/MD4" "MD4" (pin (num 11) (name IN11) (type input))
U9 A7 (pin (num 12) (name GND) (type input))
U5 18 (pin (num 13) (name CLK2) (type input))
Net 54 "/MA13" "MA13" (pin (num 14) (name IN14) (type input))
U5 28 (pin (num 15) (name I/O15) (type passive))
U9 C1 (pin (num 16) (name I/O16) (type passive))
Net 55 "/MD5" "MD5" (pin (num 17) (name I/O17) (type passive))
U9 A8 (pin (num 18) (name I/O18) (type passive))
U5 19 (pin (num 19) (name I/O19) (type passive))
Net 56 "/WR-" "WR-" (pin (num 20) (name I/O20) (type passive))
U5 29 (pin (num 21) (name I/O21) (type passive))
U9 A13 (pin (num 22) (name I/O22) (type passive))
Net 57 "/MD3" "MD3" (pin (num 23) (name IN23) (type input))
U5 17 (pin (num 24) (name VCC) (type input)))))
U9 A6 (libraries
Net 61 "/RSTL" "RSTL" (library (logical device)
U3 12 (uri F:\kicad\share\library\device.lib))
U8 11 (library (logical conn)
Net 63 "/MA16" "MA16" (uri F:\kicad\share\library\conn.lib))
U9 C8 (library (logical 74xx)
U5 2 (uri F:\kicad\share\library\74xx.lib))
Net 64 "/MA14" "MA14" (library (logical memory)
U5 3 (uri F:\kicad\share\library\memory.lib))
U9 D1 (library (logical xilinx)
Net 65 "/MA12" "MA12" (uri F:\kicad\share\library\xilinx.lib))
U9 F3 (library (logical special)
U5 4 (uri F:\kicad\share\library\special.lib)))
Net 66 "/MA7" "MA7" (nets
U5 5 (net (code 1) (name "")
U9 B3 (node (ref BUS1) (pin 28)))
Net 67 "/MA6" "MA6" (net (code 2) (name "")
U9 F2 (node (ref BUS1) (pin 27)))
U5 6 (net (code 3) (name "")
Net 68 "/MA5" "MA5" (node (ref BUS1) (pin 26)))
U9 C13 (net (code 4) (name "")
U5 7 (node (ref BUS1) (pin 25)))
Net 69 "/MA4" "MA4" (net (code 5) (name "")
U9 E1 (node (ref BUS1) (pin 24)))
U5 8 (net (code 6) (name "")
Net 70 "/MA3" "MA3" (node (ref BUS1) (pin 23)))
U5 9 (net (code 7) (name "")
U9 C2 (node (ref BUS1) (pin 22)))
Net 71 "/MD6" "MD6" (net (code 8) (name "")
U9 A9 (node (ref BUS1) (pin 21)))
U5 20 (net (code 9) (name "")
Net 72 "" "" (node (ref BUS1) (pin 20)))
R3 1 (net (code 10) (name "")
U5 30 (node (ref BUS1) (pin 19)))
Net 73 "/MD7" "MD7" (net (code 11) (name "")
U5 21 (node (ref BUS1) (pin 18)))
U9 B8 (net (code 12) (name "")
Net 74 "/MA15" "MA15" (node (ref BUS1) (pin 17)))
U5 31 (net (code 13) (name "")
U9 F1 (node (ref BUS1) (pin 16)))
Net 75 "/MA0" "MA0" (net (code 14) (name "")
U5 12 (node (ref BUS1) (pin 15)))
U9 A11 (net (code 15) (name /PC-RST)
Net 76 "/CS1-" "CS1-" (node (ref BUS1) (pin 2))
U9 A10 (node (ref U3) (pin 8))
U5 22 (node (ref U3) (pin 9)))
Net 77 "/MD0" "MD0" (net (code 16) (name /PC-IOR)
U9 C6 (node (ref BUS1) (pin 14))
U5 13 (node (ref U3) (pin 7)))
Net 78 "/MA10" "MA10" (net (code 17) (name /PC-IOW)
U5 23 (node (ref U3) (pin 6))
U9 C9 (node (ref BUS1) (pin 13)))
Net 79 "/MD1" "MD1" (net (code 18) (name "")
U5 14 (node (ref BUS1) (pin 12)))
U9 A5 (net (code 19) (name /PC-A1)
Net 80 "/OE-" "OE-" (node (ref BUS1) (pin 61))
U5 24 (node (ref U9) (pin N4))
U9 B9 (node (ref U3) (pin 2)))
Net 81 "/MD2" "MD2" (net (code 20) (name /PC-A0)
U5 15 (node (ref U9) (pin M6))
U9 B6 (node (ref BUS1) (pin 62))
Net 82 "/MA11" "MA11" (node (ref U3) (pin 3)))
U5 25 (net (code 21) (name GND)
U9 D2 (node (ref P1) (pin 18))
Net 83 "/MA9" "MA9" (node (ref U9) (pin G11))
U5 26 (node (ref U9) (pin K11))
U9 A4 (node (ref U9) (pin C10))
Net 84 "/DIR" "DIR" (node (ref U9) (pin G2))
U8 17 (node (ref BUS1) (pin 1))
U1 1 (node (ref D2) (pin 2))
Net 85 "/ENBBUF" "ENBBUF" (node (ref U1) (pin 10))
U8 22 (node (ref U9) (pin C4))
U1 19 (node (ref P1) (pin 20))
Net 86 "/PC-RD" "PC-RD" (node (ref D1) (pin 2))
U8 14 (node (ref U9) (pin K3))
U3 13 (node (ref U8) (pin 1))
U9 M8 (node (ref U9) (pin L7))
Net 87 "/SEL_LPT" "SEL_LPT" (node (ref U9) (pin B7))
U8 18 (node (ref JP1) (pin 13))
U9 L2 (node (ref JP1) (pin 11))
Net 88 "/PC-DB0" "PC-DB0" (node (ref P1) (pin 25))
U1 2 (node (ref U5) (pin 16))
BUS1 40 (node (ref P1) (pin 24))
Net 89 "/PC-DB1" "PC-DB1" (node (ref P1) (pin 23))
U1 3 (node (ref JP1) (pin 15))
BUS1 39 (node (ref U8) (pin 12))
Net 90 "/PC-DB2" "PC-DB2" (node (ref P1) (pin 22))
U1 4 (node (ref P1) (pin 21))
BUS1 38 (node (ref C1) (pin 2))
Net 91 "/PC-DB3" "PC-DB3" (node (ref C4) (pin 2))
U1 5 (node (ref C5) (pin 2))
BUS1 37 (node (ref C6) (pin 2))
Net 92 "/PC-DB4" "PC-DB4" (node (ref U2) (pin 10))
BUS1 36 (node (ref C3) (pin 2))
U1 6 (node (ref U3) (pin 10))
Net 93 "/PC-DB5" "PC-DB5" (node (ref U3) (pin 19))
U1 7 (node (ref U3) (pin 1))
BUS1 35 (node (ref JP1) (pin 7))
Net 94 "/PC-DB6" "PC-DB6" (node (ref JP1) (pin 5))
U1 8 (node (ref JP1) (pin 3))
BUS1 34 (node (ref JP1) (pin 1))
Net 95 "/PC-DB7" "PC-DB7" (node (ref C2) (pin 2))
BUS1 33 (node (ref BUS1) (pin 31))
U1 9 (node (ref P1) (pin 19))
Net 96 "/D7" "D7" (node (ref JP1) (pin 9)))
U9 L12 (net (code 22) (name VCC)
U1 11 (node (ref C1) (pin 1))
Net 97 "/D6" "D6" (node (ref C4) (pin 1))
U9 M11 (node (ref U8) (pin 24))
U1 12 (node (ref C5) (pin 1))
Net 98 "/D5" "D5" (node (ref U8) (pin 23))
U9 N11 (node (ref C6) (pin 1))
U1 13 (node (ref U2) (pin 20))
Net 99 "/D4" "D4" (node (ref U9) (pin B12))
U9 M10 (node (ref U9) (pin L3))
U1 14 (node (ref U9) (pin M7))
Net 100 "/D3" "D3" (node (ref U3) (pin 20))
U9 M9 (node (ref U9) (pin D11))
U1 15 (node (ref U1) (pin 20))
Net 101 "/D2" "D2" (node (ref U9) (pin C11))
U1 16 (node (ref U9) (pin B11))
U9 N9 (node (ref R3) (pin 2))
Net 102 "/D1" "D1" (node (ref BUS1) (pin 3))
U1 17 (node (ref BUS1) (pin 29))
U9 N8 (node (ref U9) (pin G12))
Net 103 "" "" (node (ref U5) (pin 32))
D2 1 (node (ref U9) (pin C3))
R5 1 (node (ref U9) (pin L10))
Net 105 "/LED2" "LED2" (node (ref RR1) (pin 1)))
R5 2 (net (code 23) (name /PC-AEN)
U9 F13 (node (ref U9) (pin N10))
Net 106 "/D0" "D0" (node (ref BUS1) (pin 42))
U8 21 (node (ref U2) (pin 1)))
U9 N2 (net (code 24) (name "")
U1 18 (node (ref BUS1) (pin 43)))
Net 107 "" "" (net (code 25) (name "")
D1 1 (node (ref BUS1) (pin 11)))
R4 1 (net (code 26) (name "")
Net 108 "" "" (node (ref BUS1) (pin 10)))
U3 18 (net (code 27) (name "")
U8 3 (node (ref BUS1) (pin 9)))
Net 109 "" "" (net (code 28) (name "")
U3 17 (node (ref BUS1) (pin 8)))
U8 4 (net (code 29) (name "")
Net 110 "" "" (node (ref BUS1) (pin 7)))
U3 16 (net (code 30) (name "")
U8 5 (node (ref BUS1) (pin 6)))
Net 111 "" "" (net (code 31) (name "")
U3 15 (node (ref BUS1) (pin 5)))
U8 6 (net (code 32) (name "")
Net 112 "/PC-WR" "PC-WR" (node (ref BUS1) (pin 4)))
U8 7 (net (code 33) (name "")
U9 N6 (node (ref BUS1) (pin 50)))
U3 14 (net (code 34) (name "")
Net 113 "/PC-A6" "PC-A6" (node (ref BUS1) (pin 49)))
U9 J1 (net (code 35) (name "")
BUS1 56 (node (ref BUS1) (pin 48)))
U2 15 (net (code 36) (name "")
Net 114 "/PC-A9" "PC-A9" (node (ref BUS1) (pin 47)))
U9 N7 (net (code 37) (name "")
BUS1 53 (node (ref BUS1) (pin 46)))
U2 6 (net (code 38) (name "")
Net 115 "/PC-A8" "PC-A8" (node (ref BUS1) (pin 45)))
U2 4 (net (code 39) (name "")
U9 H1 (node (ref BUS1) (pin 44)))
BUS1 54 (net (code 40) (name "")
Net 116 "/PC-A7" "PC-A7" (node (ref BUS1) (pin 41)))
BUS1 55 (net (code 41) (name "")
U9 H2 (node (ref BUS1) (pin 32)))
U2 13 (net (code 42) (name "")
Net 117 "/PC-A5" "PC-A5" (node (ref BUS1) (pin 30)))
BUS1 57 (net (code 43) (name "")
U2 2 (node (ref U9) (pin B5)))
U9 J2 (net (code 44) (name "")
Net 118 "/PC-A4" "PC-A4" (node (ref U9) (pin A3)))
BUS1 58 (net (code 45) (name "")
U9 H3 (node (ref U9) (pin B4)))
U2 17 (net (code 46) (name "")
Net 119 "/PC-A3" "PC-A3" (node (ref U9) (pin C5)))
U3 5 (net (code 47) (name "")
U9 K2 (node (ref U9) (pin A2)))
BUS1 59 (net (code 48) (name "")
Net 120 "/PC-A2" "PC-A2" (node (ref U9) (pin A1)))
U3 4 (net (code 49) (name "")
U9 M5 (node (ref U9) (pin B1)))
BUS1 60 (net (code 50) (name "")
Net 121 "/PC-A11" "PC-A11" (node (ref U9) (pin E3)))
U2 8 (net (code 51) (name "")
BUS1 51 (node (ref U9) (pin E2)))
Net 122 "/PC-A10" "PC-A10" (net (code 52) (name /MA8)
U9 L8 (node (ref U9) (pin G1))
BUS1 52 (node (ref U5) (pin 27)))
U2 11 (net (code 53) (name /MD4)
Net 123 "/LED1" "LED1" (node (ref U9) (pin A7))
U9 M3 (node (ref U5) (pin 18)))
R4 2 (net (code 54) (name /MA13)
Net 125 "/MA2" "MA2" (node (ref U5) (pin 28))
U9 D3 (node (ref U9) (pin C1)))
U5 10 (net (code 55) (name /MD5)
Net 128 "/CLKLCA" "CLKLCA" (node (ref U9) (pin A8))
U8 16 (node (ref U5) (pin 19)))
U9 L4 (net (code 56) (name /WR-)
U9 M4 (node (ref U5) (pin 29))
Net 131 "/MATCHL" "MATCHL" (node (ref U9) (pin A13)))
U2 19 (net (code 57) (name /MD3)
U8 2 (node (ref U5) (pin 17))
Net 134 "/MA1" "MA1" (node (ref U9) (pin A6)))
U5 11 (net (code 58) (name "")
U9 B2 (node (ref U8) (pin 10)))
Net 137 "/DONE" "DONE" (net (code 59) (name "")
U8 20 (node (ref U8) (pin 9)))
U9 L11 (net (code 60) (name "")
Net 139 "/PROG-" "PROG-" (node (ref U8) (pin 8)))
U8 19 (net (code 61) (name /RSTL)
U9 M12 (node (ref U3) (pin 12))
Net 144 "/WR_REG" "WR_REG" (node (ref U8) (pin 11)))
U8 13 (net (code 62) (name "")
U8 15 (node (ref U3) (pin 11)))
Net 145 "" "" (net (code 63) (name /MA16)
X1 1 (node (ref U9) (pin C8))
C2 1 (node (ref U5) (pin 2)))
R1 2 (net (code 64) (name /MA14)
U9 L1 (node (ref U5) (pin 3))
Net 146 "" "" (node (ref U9) (pin D1)))
X1 2 (net (code 65) (name /MA12)
R1 1 (node (ref U9) (pin F3))
C3 1 (node (ref U5) (pin 4)))
R2 2 (net (code 66) (name /MA7)
Net 147 "/BIT6" "BIT6" (node (ref U5) (pin 5))
U9 J13 (node (ref U9) (pin B3)))
P1 8 (net (code 67) (name /MA6)
Net 148 "/BIT7" "BIT7" (node (ref U9) (pin F2))
P1 9 (node (ref U5) (pin 6)))
U9 H11 (net (code 68) (name /MA5)
Net 149 "/ACK" "ACK" (node (ref U9) (pin C13))
P1 10 (node (ref U5) (pin 7)))
U9 K13 (net (code 69) (name /MA4)
Net 150 "/BUST+" "BUST+" (node (ref U9) (pin E1))
U9 J12 (node (ref U5) (pin 8)))
P1 11 (net (code 70) (name /MA3)
Net 151 "/PE+" "PE+" (node (ref U5) (pin 9))
P1 12 (node (ref U9) (pin C2)))
U9 L13 (net (code 71) (name /MD6)
Net 152 "/SLCT+" "SLCT+" (node (ref U9) (pin A9))
P1 13 (node (ref U5) (pin 20)))
U9 N13 (net (code 72) (name "")
Net 153 "/BIT5" "BIT5" (node (ref R3) (pin 1))
U9 H12 (node (ref U5) (pin 30)))
P1 7 (net (code 73) (name /MD7)
Net 154 "/8MH-OUT" "8MH-OUT" (node (ref U5) (pin 21))
R2 1 (node (ref U9) (pin B8)))
U9 K1 (net (code 74) (name /MA15)
Net 156 "/STROBE" "STROBE" (node (ref U5) (pin 31))
P1 1 (node (ref U9) (pin F1)))
U9 A12 (net (code 75) (name /MA0)
Net 157 "/AUTOFD-" "AUTOFD-" (node (ref U5) (pin 12))
P1 14 (node (ref U9) (pin A11)))
U9 C12 (net (code 76) (name /CS1-)
Net 158 "/ERROR-" "ERROR-" (node (ref U9) (pin A10))
P1 15 (node (ref U5) (pin 22)))
U9 D13 (net (code 77) (name /MD0)
Net 159 "/BIT2" "BIT2" (node (ref U9) (pin C6))
U9 F12 (node (ref U5) (pin 13)))
P1 4 (net (code 78) (name /MA10)
Net 160 "/INIT-" "INIT-" (node (ref U5) (pin 23))
P1 16 (node (ref U9) (pin C9)))
U9 E12 (net (code 79) (name /MD1)
Net 161 "/SLCTIN-" "SLCTIN-" (node (ref U5) (pin 14))
P1 17 (node (ref U9) (pin A5)))
U9 F11 (net (code 80) (name /OE-)
Net 162 "/BIT0" "BIT0" (node (ref U5) (pin 24))
U9 D12 (node (ref U9) (pin B9)))
P1 2 (net (code 81) (name /MD2)
Net 163 "/BIT1" "BIT1" (node (ref U5) (pin 15))
P1 3 (node (ref U9) (pin B6)))
U9 E13 (net (code 82) (name /MA11)
Net 164 "/BIT3" "BIT3" (node (ref U5) (pin 25))
U9 G13 (node (ref U9) (pin D2)))
P1 5 (net (code 83) (name /MA9)
Net 165 "/BIT4" "BIT4" (node (ref U5) (pin 26))
P1 6 (node (ref U9) (pin A4)))
U9 H13 (net (code 84) (name /DIR)
Net 166 "/REF10" "REF10" (node (ref U8) (pin 17))
U2 12 (node (ref U1) (pin 1)))
JP1 2 (net (code 85) (name /ENBBUF)
RR1 9 (node (ref U8) (pin 22))
Net 167 "/REF11" "REF11" (node (ref U1) (pin 19)))
JP1 4 (net (code 86) (name /PC-RD)
RR1 8 (node (ref U8) (pin 14))
U2 9 (node (ref U3) (pin 13))
Net 168 "/REF7" "REF7" (node (ref U9) (pin M8)))
JP1 6 (net (code 87) (name /SEL_LPT)
RR1 7 (node (ref U8) (pin 18))
U2 14 (node (ref U9) (pin L2)))
Net 169 "/REF9" "REF9" (net (code 88) (name /PC-DB0)
JP1 8 (node (ref U1) (pin 2))
U2 7 (node (ref BUS1) (pin 40)))
RR1 6 (net (code 89) (name /PC-DB1)
Net 170 "/REF6" "REF6" (node (ref U1) (pin 3))
U2 16 (node (ref BUS1) (pin 39)))
RR1 5 (net (code 90) (name /PC-DB2)
JP1 10 (node (ref U1) (pin 4))
Net 171 "/REF8" "REF8" (node (ref BUS1) (pin 38)))
RR1 4 (net (code 91) (name /PC-DB3)
U2 5 (node (ref U1) (pin 5))
JP1 12 (node (ref BUS1) (pin 37)))
Net 172 "/REF4" "REF4" (net (code 92) (name /PC-DB4)
RR1 3 (node (ref BUS1) (pin 36))
U2 18 (node (ref U1) (pin 6)))
JP1 14 (net (code 93) (name /PC-DB5)
Net 173 "/REF5" "REF5" (node (ref U1) (pin 7))
JP1 16 (node (ref BUS1) (pin 35)))
RR1 2 (net (code 94) (name /PC-DB6)
U2 3 (node (ref U1) (pin 8))
} (node (ref BUS1) (pin 34)))
#End (net (code 95) (name /PC-DB7)
(node (ref BUS1) (pin 33))
(node (ref U1) (pin 9)))
(net (code 96) (name /D7)
(node (ref U9) (pin L12))
(node (ref U1) (pin 11)))
(net (code 97) (name /D6)
(node (ref U9) (pin M11))
(node (ref U1) (pin 12)))
(net (code 98) (name /D5)
(node (ref U9) (pin N11))
(node (ref U1) (pin 13)))
(net (code 99) (name /D4)
(node (ref U9) (pin M10))
(node (ref U1) (pin 14)))
(net (code 100) (name /D3)
(node (ref U9) (pin M9))
(node (ref U1) (pin 15)))
(net (code 101) (name /D2)
(node (ref U1) (pin 16))
(node (ref U9) (pin N9)))
(net (code 102) (name /D1)
(node (ref U1) (pin 17))
(node (ref U9) (pin N8)))
(net (code 103) (name "")
(node (ref D2) (pin 1))
(node (ref R5) (pin 1)))
(net (code 104) (name "")
(node (ref U9) (pin B13)))
(net (code 105) (name /LED2)
(node (ref R5) (pin 2))
(node (ref U9) (pin F13)))
(net (code 106) (name /D0)
(node (ref U8) (pin 21))
(node (ref U9) (pin N2))
(node (ref U1) (pin 18)))
(net (code 107) (name "")
(node (ref D1) (pin 1))
(node (ref R4) (pin 1)))
(net (code 108) (name "")
(node (ref U3) (pin 18))
(node (ref U8) (pin 3)))
(net (code 109) (name "")
(node (ref U3) (pin 17))
(node (ref U8) (pin 4)))
(net (code 110) (name "")
(node (ref U3) (pin 16))
(node (ref U8) (pin 5)))
(net (code 111) (name "")
(node (ref U3) (pin 15))
(node (ref U8) (pin 6)))
(net (code 112) (name /PC-WR)
(node (ref U8) (pin 7))
(node (ref U9) (pin N6))
(node (ref U3) (pin 14)))
(net (code 113) (name /PC-A6)
(node (ref U9) (pin J1))
(node (ref BUS1) (pin 56))
(node (ref U2) (pin 15)))
(net (code 114) (name /PC-A9)
(node (ref U9) (pin N7))
(node (ref BUS1) (pin 53))
(node (ref U2) (pin 6)))
(net (code 115) (name /PC-A8)
(node (ref U2) (pin 4))
(node (ref U9) (pin H1))
(node (ref BUS1) (pin 54)))
(net (code 116) (name /PC-A7)
(node (ref BUS1) (pin 55))
(node (ref U9) (pin H2))
(node (ref U2) (pin 13)))
(net (code 117) (name /PC-A5)
(node (ref BUS1) (pin 57))
(node (ref U2) (pin 2))
(node (ref U9) (pin J2)))
(net (code 118) (name /PC-A4)
(node (ref BUS1) (pin 58))
(node (ref U9) (pin H3))
(node (ref U2) (pin 17)))
(net (code 119) (name /PC-A3)
(node (ref U3) (pin 5))
(node (ref U9) (pin K2))
(node (ref BUS1) (pin 59)))
(net (code 120) (name /PC-A2)
(node (ref U3) (pin 4))
(node (ref U9) (pin M5))
(node (ref BUS1) (pin 60)))
(net (code 121) (name /PC-A11)
(node (ref U2) (pin 8))
(node (ref BUS1) (pin 51)))
(net (code 122) (name /PC-A10)
(node (ref U9) (pin L8))
(node (ref BUS1) (pin 52))
(node (ref U2) (pin 11)))
(net (code 123) (name /LED1)
(node (ref U9) (pin M3))
(node (ref R4) (pin 2)))
(net (code 124) (name "")
(node (ref U9) (pin M2)))
(net (code 125) (name /MA2)
(node (ref U9) (pin D3))
(node (ref U5) (pin 10)))
(net (code 126) (name "")
(node (ref U9) (pin J3)))
(net (code 127) (name "")
(node (ref U9) (pin N3)))
(net (code 128) (name /CLKLCA)
(node (ref U8) (pin 16))
(node (ref U9) (pin L4))
(node (ref U9) (pin M4)))
(net (code 129) (name "")
(node (ref U9) (pin L5)))
(net (code 130) (name "")
(node (ref U9) (pin N5)))
(net (code 131) (name /MATCHL)
(node (ref U2) (pin 19))
(node (ref U8) (pin 2)))
(net (code 132) (name "")
(node (ref U9) (pin M1)))
(net (code 133) (name "")
(node (ref U9) (pin N1)))
(net (code 134) (name /MA1)
(node (ref U5) (pin 11))
(node (ref U9) (pin B2)))
(net (code 135) (name "")
(node (ref U9) (pin E11)))
(net (code 136) (name "")
(node (ref U9) (pin J11)))
(net (code 137) (name /DONE)
(node (ref U8) (pin 20))
(node (ref U9) (pin L11)))
(net (code 138) (name "")
(node (ref U9) (pin K12)))
(net (code 139) (name /PROG-)
(node (ref U8) (pin 19))
(node (ref U9) (pin M12)))
(net (code 140) (name "")
(node (ref U9) (pin N12)))
(net (code 141) (name "")
(node (ref U9) (pin L6)))
(net (code 142) (name "")
(node (ref U9) (pin L9)))
(net (code 143) (name "")
(node (ref U9) (pin B10)))
(net (code 144) (name /WR_REG)
(node (ref U8) (pin 13))
(node (ref U8) (pin 15)))
(net (code 145) (name "")
(node (ref X1) (pin 1))
(node (ref C2) (pin 1))
(node (ref R1) (pin 2))
(node (ref U9) (pin L1)))
(net (code 146) (name "")
(node (ref X1) (pin 2))
(node (ref R1) (pin 1))
(node (ref C3) (pin 1))
(node (ref R2) (pin 2)))
(net (code 147) (name /BIT6)
(node (ref U9) (pin J13))
(node (ref P1) (pin 8)))
(net (code 148) (name /BIT7)
(node (ref P1) (pin 9))
(node (ref U9) (pin H11)))
(net (code 149) (name /ACK)
(node (ref P1) (pin 10))
(node (ref U9) (pin K13)))
(net (code 150) (name /BUST+)
(node (ref U9) (pin J12))
(node (ref P1) (pin 11)))
(net (code 151) (name /PE+)
(node (ref P1) (pin 12))
(node (ref U9) (pin L13)))
(net (code 152) (name /SLCT+)
(node (ref P1) (pin 13))
(node (ref U9) (pin N13)))
(net (code 153) (name /BIT5)
(node (ref U9) (pin H12))
(node (ref P1) (pin 7)))
(net (code 154) (name /8MH-OUT)
(node (ref R2) (pin 1))
(node (ref U9) (pin K1)))
(net (code 155) (name "")
(node (ref RR1) (pin 10)))
(net (code 156) (name /STROBE)
(node (ref P1) (pin 1))
(node (ref U9) (pin A12)))
(net (code 157) (name /AUTOFD-)
(node (ref P1) (pin 14))
(node (ref U9) (pin C12)))
(net (code 158) (name /ERROR-)
(node (ref P1) (pin 15))
(node (ref U9) (pin D13)))
(net (code 159) (name /BIT2)
(node (ref U9) (pin F12))
(node (ref P1) (pin 4)))
(net (code 160) (name /INIT-)
(node (ref P1) (pin 16))
(node (ref U9) (pin E12)))
(net (code 161) (name /SLCTIN-)
(node (ref P1) (pin 17))
(node (ref U9) (pin F11)))
(net (code 162) (name /BIT0)
(node (ref U9) (pin D12))
(node (ref P1) (pin 2)))
(net (code 163) (name /BIT1)
(node (ref P1) (pin 3))
(node (ref U9) (pin E13)))
(net (code 164) (name /BIT3)
(node (ref U9) (pin G13))
(node (ref P1) (pin 5)))
(net (code 165) (name /BIT4)
(node (ref P1) (pin 6))
(node (ref U9) (pin H13)))
(net (code 166) (name /REF10)
(node (ref U2) (pin 12))
(node (ref JP1) (pin 2))
(node (ref RR1) (pin 9)))
(net (code 167) (name /REF11)
(node (ref JP1) (pin 4))
(node (ref RR1) (pin 8))
(node (ref U2) (pin 9)))
(net (code 168) (name /REF7)
(node (ref JP1) (pin 6))
(node (ref RR1) (pin 7))
(node (ref U2) (pin 14)))
(net (code 169) (name /REF9)
(node (ref JP1) (pin 8))
(node (ref U2) (pin 7))
(node (ref RR1) (pin 6)))
(net (code 170) (name /REF6)
(node (ref U2) (pin 16))
(node (ref RR1) (pin 5))
(node (ref JP1) (pin 10)))
(net (code 171) (name /REF8)
(node (ref RR1) (pin 4))
(node (ref U2) (pin 5))
(node (ref JP1) (pin 12)))
(net (code 172) (name /REF4)
(node (ref RR1) (pin 3))
(node (ref U2) (pin 18))
(node (ref JP1) (pin 14)))
(net (code 173) (name /REF5)
(node (ref JP1) (pin 16))
(node (ref RR1) (pin 2))
(node (ref U2) (pin 3)))))
\ No newline at end of file
...@@ -27,7 +27,7 @@ Comment3 "Comment 3" ...@@ -27,7 +27,7 @@ Comment3 "Comment 3"
Comment4 "Comment 4" Comment4 "Comment 4"
$EndDescr $EndDescr
$Bitmap $Bitmap
Pos 9250 10500 Pos 9350 10600
Scale 1,000000 Scale 1,000000
Data Data
89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44 52 00 00 00 E5 00 00 01 0E 08 02 00 00 00 F9 5F 47 89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44 52 00 00 00 E5 00 00 01 0E 08 02 00 00 00 F9 5F 47
...@@ -1181,7 +1181,7 @@ BF FD 96 77 9E 38 7E F1 EC E1 55 E2 AF 2F E0 1B 5F F9 FC FE BD 4F B9 56 EB C9 C9 ...@@ -1181,7 +1181,7 @@ BF FD 96 77 9E 38 7E F1 EC E1 55 E2 AF 2F E0 1B 5F F9 FC FE BD 4F B9 56 EB C9 C9
29 65 D5 9A 89 35 EB 37 F6 E3 02 4F 95 57 89 BF 1E 63 D9 CA D5 CB 7E 65 BC F3 FF E1 D5 7A 1F CE 29 65 D5 9A 89 35 EB 37 F6 E3 02 4F 95 57 89 BF 1E 63 D9 CA D5 CB 7E 65 BC F3 FF E1 D5 7A 1F CE
A2 94 8E 79 E6 79 49 E6 FD 75 9E B9 C4 BC BF CE 33 97 98 F7 D7 79 E6 12 F3 FE 3A CF 5C E2 E7 E2 A2 94 8E 79 E6 79 49 E6 FD 75 9E B9 C4 BC BF CE 33 97 98 F7 D7 79 E6 12 F3 FE 3A CF 5C E2 E7 E2
03 93 93 93 FD BA 8E 79 E6 39 19 8E FB EB DC 15 0B E6 F9 D5 61 7E 3F 30 CF 5C 62 DE 5F E7 99 4B 03 93 93 93 FD BA 8E 79 E6 39 19 8E FB EB DC 15 0B E6 F9 D5 61 7E 3F 30 CF 5C 62 DE 5F E7 99 4B
FC 1F 94 BD 62 D3 EE A5 8B 6B 00 00 00 00 49 45 4E 44 AE 42 60 82 11 FC 1F 94 BD 62 D3 EE A5 8B 6B 00 00 00 00 49 45 4E 44 AE 42 60 82 10
EndData EndData
$EndBitmap $EndBitmap
Wire Bus Line Wire Bus Line
...@@ -1794,7 +1794,7 @@ U 1 1 4A087146 ...@@ -1794,7 +1794,7 @@ U 1 1 4A087146
P 5250 1950 P 5250 1950
F 0 "U3" H 5250 2525 60 0000 C BNN F 0 "U3" H 5250 2525 60 0000 C BNN
F 1 "74LS541" H 5250 1375 60 0000 C TNN F 1 "74LS541" H 5250 1375 60 0000 C TNN
F 2 "" H 5250 1950 60 0001 C CNN F 2 "DIP-20__300" H 5250 1250 60 0000 C CNN
F 3 "" H 5250 1950 60 0001 C CNN F 3 "" H 5250 1950 60 0001 C CNN
1 5250 1950 1 5250 1950
1 0 0 -1 1 0 0 -1
...@@ -2049,7 +2049,7 @@ U 1 1 32568D1E ...@@ -2049,7 +2049,7 @@ U 1 1 32568D1E
P 1700 7250 P 1700 7250
F 0 "JP1" H 1700 7750 70 0000 C CNN F 0 "JP1" H 1700 7750 70 0000 C CNN
F 1 "CONN_8X2" V 1700 7250 70 0000 C CNN F 1 "CONN_8X2" V 1700 7250 70 0000 C CNN
F 2 "pin_array_8x2" H 1700 7800 60 0000 C CNN F 2 "pin_array_8x2" H 1700 7850 60 0000 C CNN
F 3 "" H 1700 7250 60 0001 C CNN F 3 "" H 1700 7250 60 0001 C CNN
1 1700 7250 1 1700 7250
1 0 0 1 1 0 0 1
...@@ -2384,7 +2384,7 @@ U 1 1 3240023F ...@@ -2384,7 +2384,7 @@ U 1 1 3240023F
P 7700 9050 P 7700 9050
F 0 "U5" H 7750 10200 70 0000 C CNN F 0 "U5" H 7750 10200 70 0000 C CNN
F 1 "628128" H 7700 7900 70 0000 C CNN F 1 "628128" H 7700 7900 70 0000 C CNN
F 2 "32dip600" H 7700 7800 60 0000 C CNN F 2 "DIP-32__600" H 7700 7800 60 0000 C CNN
F 3 "" H 7700 9050 60 0001 C CNN F 3 "" H 7700 9050 60 0001 C CNN
1 7700 9050 1 7700 9050
1 0 0 -1 1 0 0 -1
...@@ -2742,7 +2742,7 @@ U 1 1 322D35B4 ...@@ -2742,7 +2742,7 @@ U 1 1 322D35B4
P 4600 6900 P 4600 6900
F 0 "U2" H 4600 7850 60 0000 C CNN F 0 "U2" H 4600 7850 60 0000 C CNN
F 1 "74LS688" H 4600 5950 60 0000 C CIB F 1 "74LS688" H 4600 5950 60 0000 C CIB
F 2 "20dip300" H 4600 5850 60 0000 C CNB F 2 "DIP-20__300" H 4600 5850 60 0000 C CNB
F 3 "" H 4600 6900 60 0001 C CNN F 3 "" H 4600 6900 60 0001 C CNN
1 4600 6900 1 4600 6900
1 0 0 -1 1 0 0 -1
...@@ -2809,8 +2809,8 @@ L EP600 U8 ...@@ -2809,8 +2809,8 @@ L EP600 U8
U 1 1 322D321C U 1 1 322D321C
P 7650 1800 P 7650 1800
F 0 "U8" H 7650 1900 70 0000 C CNN F 0 "U8" H 7650 1900 70 0000 C CNN
F 1 "EP600" H 7650 1300 70 0000 C CNN F 1 "EP600" H 7650 850 70 0000 C CNN
F 2 "24dip300" H 7700 1000 60 0000 C CNN F 2 "DIP-24__300" H 7700 750 60 0000 C CNN
F 3 "" H 7650 1800 60 0001 C CNN F 3 "" H 7650 1800 60 0001 C CNN
1 7650 1800 1 7650 1800
1 0 0 -1 1 0 0 -1
...@@ -2821,7 +2821,7 @@ U 1 1 322D31F4 ...@@ -2821,7 +2821,7 @@ U 1 1 322D31F4
P 5200 3600 P 5200 3600
F 0 "U1" H 5300 4175 60 0000 L BNN F 0 "U1" H 5300 4175 60 0000 L BNN
F 1 "74LS245" H 5250 3025 60 0000 L TNN F 1 "74LS245" H 5250 3025 60 0000 L TNN
F 2 "20dip300" H 5350 3100 60 0000 C CNN F 2 "DIP-20__300" H 5400 2900 60 0000 C CNN
F 3 "" H 5200 3600 60 0001 C CNN F 3 "" H 5200 3600 60 0001 C CNN
1 5200 3600 1 5200 3600
1 0 0 -1 1 0 0 -1
...@@ -2830,9 +2830,9 @@ $Comp ...@@ -2830,9 +2830,9 @@ $Comp
L BUSPC BUS1 L BUSPC BUS1
U 1 1 322D3011 U 1 1 322D3011
P 2250 2950 P 2250 2950
F 0 "BUS1" H 2250 3050 70 0000 C CNN F 0 "BUS1" H 2200 4600 70 0000 C CNN
F 1 "BUSPC" H 2250 2850 70 0000 C CNN F 1 "BUSPC" H 2200 1250 70 0000 C CNN
F 2 "BUS_PC" H 2250 1250 60 0000 C CNN F 2 "BUS_PC" H 2202 1160 60 0000 C CNN
F 3 "" H 2250 2950 60 0001 C CNN F 3 "" H 2250 2950 60 0001 C CNN
1 2250 2950 1 2250 2950
1 0 0 -1 1 0 0 -1
......
...@@ -47,9 +47,18 @@ class wxTextCtrl; ...@@ -47,9 +47,18 @@ class wxTextCtrl;
* <li> know too much about the caller's UI, i.e. wx. </li> * <li> know too much about the caller's UI, i.e. wx. </li>
* <li> stop after the first error </li> * <li> stop after the first error </li>
* </ul> * </ul>
* the reporter has 3 levels (flags) for filtering:
* no filter
* report warning
* report errors
* They are indicators for the calling code, filtering is not made here
*/ */
class REPORTER class REPORTER
{ {
bool m_reportAll; // Filter flag: set to true to report all messages
bool m_reportWarnings; // Filter flag: set to true to report warning
bool m_reportErrors; // Filter flag: set to true to report errors
public: public:
/** /**
* Function Report * Function Report
...@@ -68,6 +77,41 @@ public: ...@@ -68,6 +77,41 @@ public:
REPORTER& operator <<( wxChar aChar ) { return Report( wxString( aChar ) ); } REPORTER& operator <<( wxChar aChar ) { return Report( wxString( aChar ) ); }
REPORTER& operator <<( const char* aText ) { return Report( aText ); } REPORTER& operator <<( const char* aText ) { return Report( aText ); }
/**
* Returns true if all messages should be reported
*/
bool ReportAll() { return m_reportAll; }
/**
* Returns true if all messages or warning messages should be reported
*/
bool ReportWarnings() { return m_reportAll | m_reportWarnings; }
/**
* Returns true if all messages or error messages should be reported
*/
bool ReportErrors() { return m_reportAll | m_reportErrors; }
/**
* Set the report filter state, for all messages
* @param aEnable = filter state (true/false)
*/
void SetReportAll( bool aEnable) { m_reportAll = aEnable; }
/**
* Set the report filter state, for warning messages
* note: report can be disable only if m_reportAll = false
* @param aEnable = filter state (true/false)
*/
void SetReportWarnings( bool aEnable) { m_reportWarnings = aEnable; }
/**
* Set the report filter state, for error messages
* note: report can be disable only if m_reportAll = false
* @param aEnable = filter state (true/false)
*/
void SetReportErrors( bool aEnable) { m_reportErrors = aEnable; }
}; };
...@@ -84,6 +128,9 @@ public: ...@@ -84,6 +128,9 @@ public:
REPORTER(), REPORTER(),
m_textCtrl( aTextCtrl ) m_textCtrl( aTextCtrl )
{ {
SetReportAll( true );
SetReportWarnings( true );
SetReportErrors( true );
} }
REPORTER& Report( const wxString& aText ); REPORTER& Report( const wxString& aText );
......
...@@ -2368,7 +2368,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2368,7 +2368,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
{ {
component = aNetlist.GetComponent( i ); component = aNetlist.GetComponent( i );
if( aReporter ) if( aReporter && aReporter->ReportAll() )
{ {
msg.Printf( _( "Checking netlist component footprint \"%s:%s:%s\".\n" ), msg.Printf( _( "Checking netlist component footprint \"%s:%s:%s\".\n" ),
GetChars( component->GetReference() ), GetChars( component->GetReference() ),
...@@ -2387,18 +2387,26 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2387,18 +2387,26 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
if( aReporter ) if( aReporter )
{ {
if( component->GetModule() != NULL ) if( component->GetModule() != NULL )
{
msg.Printf( _( "Adding new component \"%s:%s\" footprint \"%s\".\n" ), msg.Printf( _( "Adding new component \"%s:%s\" footprint \"%s\".\n" ),
GetChars( component->GetReference() ), GetChars( component->GetReference() ),
GetChars( component->GetTimeStamp() ), GetChars( component->GetTimeStamp() ),
GetChars( component->GetFootprintName() ) ); GetChars( component->GetFootprintName() ) );
if( aReporter->ReportWarnings() )
aReporter->Report( msg );
}
else else
{
msg.Printf( _( "Cannot add new component \"%s:%s\" due to missing " msg.Printf( _( "Cannot add new component \"%s:%s\" due to missing "
"footprint \"%s\".\n" ), "footprint \"%s\".\n" ),
GetChars( component->GetReference() ), GetChars( component->GetReference() ),
GetChars( component->GetTimeStamp() ), GetChars( component->GetTimeStamp() ),
GetChars( component->GetFootprintName() ) ); GetChars( component->GetFootprintName() ) );
aReporter->Report( msg ); if( aReporter->ReportErrors() )
aReporter->Report( msg );
}
} }
if( !aNetlist.IsDryRun() && (component->GetModule() != NULL) ) if( !aNetlist.IsDryRun() && (component->GetModule() != NULL) )
...@@ -2422,20 +2430,28 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2422,20 +2430,28 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
if( aReporter ) if( aReporter )
{ {
if( component->GetModule() != NULL ) if( component->GetModule() != NULL )
{
msg.Printf( _( "Replacing component \"%s:%s\" footprint \"%s\" with " msg.Printf( _( "Replacing component \"%s:%s\" footprint \"%s\" with "
"\"%s\".\n" ), "\"%s\".\n" ),
GetChars( footprint->GetReference() ), GetChars( footprint->GetReference() ),
GetChars( footprint->GetPath() ), GetChars( footprint->GetPath() ),
GetChars( footprint->GetLibRef() ), GetChars( footprint->GetLibRef() ),
GetChars( component->GetFootprintName() ) ); GetChars( component->GetFootprintName() ) );
if( aReporter->ReportWarnings() )
aReporter->Report( msg );
}
else else
{
msg.Printf( _( "Cannot replace component \"%s:%s\" due to missing " msg.Printf( _( "Cannot replace component \"%s:%s\" due to missing "
"footprint \"%s\".\n" ), "footprint \"%s\".\n" ),
GetChars( footprint->GetReference() ), GetChars( footprint->GetReference() ),
GetChars( footprint->GetPath() ), GetChars( footprint->GetPath() ),
GetChars( component->GetFootprintName() ) ); GetChars( component->GetFootprintName() ) );
aReporter->Report( msg ); if( aReporter->ReportErrors() )
aReporter->Report( msg );
}
} }
if( !aNetlist.IsDryRun() && (component->GetModule() != NULL) ) if( !aNetlist.IsDryRun() && (component->GetModule() != NULL) )
...@@ -2459,7 +2475,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2459,7 +2475,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
// Test for reference designator field change. // Test for reference designator field change.
if( footprint->GetReference() != component->GetReference() ) if( footprint->GetReference() != component->GetReference() )
{ {
if( aReporter ) if( aReporter && aReporter->ReportWarnings())
{ {
msg.Printf( _( "Changing footprint \"%s:%s\" reference to \"%s\".\n" ), msg.Printf( _( "Changing footprint \"%s:%s\" reference to \"%s\".\n" ),
GetChars( footprint->GetReference() ), GetChars( footprint->GetReference() ),
...@@ -2475,7 +2491,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2475,7 +2491,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
// Test for value field change. // Test for value field change.
if( footprint->GetValue() != component->GetValue() ) if( footprint->GetValue() != component->GetValue() )
{ {
if( aReporter ) if( aReporter && aReporter->ReportAll() )
{ {
msg.Printf( _( "Changing footprint \"%s:%s\" value from \"%s\" to \"%s\".\n" ), msg.Printf( _( "Changing footprint \"%s:%s\" value from \"%s\" to \"%s\".\n" ),
GetChars( footprint->GetReference() ), GetChars( footprint->GetReference() ),
...@@ -2492,7 +2508,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2492,7 +2508,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
// Test for time stamp change. // Test for time stamp change.
if( footprint->GetPath() != component->GetTimeStamp() ) if( footprint->GetPath() != component->GetTimeStamp() )
{ {
if( aReporter ) if( aReporter && aReporter->ReportWarnings() )
{ {
msg.Printf( _( "Changing footprint path \"%s:%s\" to \"%s\".\n" ), msg.Printf( _( "Changing footprint path \"%s:%s\" to \"%s\".\n" ),
GetChars( footprint->GetReference() ), GetChars( footprint->GetReference() ),
...@@ -2518,7 +2534,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2518,7 +2534,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
{ {
if( !pad->GetNetname().IsEmpty() ) if( !pad->GetNetname().IsEmpty() )
{ {
if( aReporter ) if( aReporter && aReporter->ReportAll() )
{ {
msg.Printf( _( "Clearing component \"%s:%s\" pin \"%s\" net name.\n" ), msg.Printf( _( "Clearing component \"%s:%s\" pin \"%s\" net name.\n" ),
GetChars( footprint->GetReference() ), GetChars( footprint->GetReference() ),
...@@ -2535,7 +2551,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2535,7 +2551,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
{ {
if( net.GetNetName() != pad->GetNetname() ) if( net.GetNetName() != pad->GetNetname() )
{ {
if( aReporter ) if( aReporter && aReporter->ReportAll() )
{ {
msg.Printf( _( "Changing component \"%s:%s\" pin \"%s\" net name from " msg.Printf( _( "Changing component \"%s:%s\" pin \"%s\" net name from "
"\"%s\" to \"%s\".\n" ), "\"%s\" to \"%s\".\n" ),
...@@ -2573,7 +2589,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -2573,7 +2589,7 @@ void BOARD::ReplaceNetlist( NETLIST& aNetlist, REPORTER* aReporter )
if( component == NULL ) if( component == NULL )
{ {
if( aReporter ) if( aReporter && aReporter->ReportWarnings() )
{ {
msg.Printf( _( "Removing footprint \"%s:%s\".\n" ), msg.Printf( _( "Removing footprint \"%s:%s\".\n" ),
GetChars( module->GetReference() ), GetChars( module->GetReference() ),
......
...@@ -46,6 +46,7 @@ ...@@ -46,6 +46,7 @@
#include <dialog_netlist.h> #include <dialog_netlist.h>
#define NETLIST_SILENTMODE_KEY wxT("SilentMode") #define NETLIST_SILENTMODE_KEY wxT("SilentMode")
#define NETLIST_FULLMESSAGES_KEY wxT("NetlistReportAllMsg")
void PCB_EDIT_FRAME::InstallNetlistFrame( wxDC* DC ) void PCB_EDIT_FRAME::InstallNetlistFrame( wxDC* DC )
{ {
...@@ -95,9 +96,11 @@ DIALOG_NETLIST::DIALOG_NETLIST( PCB_EDIT_FRAME* aParent, wxDC * aDC, ...@@ -95,9 +96,11 @@ DIALOG_NETLIST::DIALOG_NETLIST( PCB_EDIT_FRAME* aParent, wxDC * aDC,
m_dc = aDC; m_dc = aDC;
m_config = wxGetApp().GetSettings(); m_config = wxGetApp().GetSettings();
m_silentMode = m_config->Read( NETLIST_SILENTMODE_KEY, 0l ); m_silentMode = m_config->Read( NETLIST_SILENTMODE_KEY, 0l );
m_reportAll = m_config->Read( NETLIST_FULLMESSAGES_KEY, 1l );
m_NetlistFilenameCtrl->SetValue( aNetlistFullFilename ); m_NetlistFilenameCtrl->SetValue( aNetlistFullFilename );
m_cmpNameSourceOpt->SetSelection( m_parent->GetUseCmpFileForFpNames() ? 1 : 0 ); m_cmpNameSourceOpt->SetSelection( m_parent->GetUseCmpFileForFpNames() ? 1 : 0 );
m_checkBoxSilentMode->SetValue( m_silentMode ); m_checkBoxSilentMode->SetValue( m_silentMode );
m_checkBoxFullMessages->SetValue( m_reportAll );
GetSizer()->SetSizeHints( this ); GetSizer()->SetSizeHints( this );
} }
...@@ -105,6 +108,7 @@ DIALOG_NETLIST::DIALOG_NETLIST( PCB_EDIT_FRAME* aParent, wxDC * aDC, ...@@ -105,6 +108,7 @@ DIALOG_NETLIST::DIALOG_NETLIST( PCB_EDIT_FRAME* aParent, wxDC * aDC,
DIALOG_NETLIST::~DIALOG_NETLIST() DIALOG_NETLIST::~DIALOG_NETLIST()
{ {
m_config->Write( NETLIST_SILENTMODE_KEY, (long) m_silentMode ); m_config->Write( NETLIST_SILENTMODE_KEY, (long) m_silentMode );
m_config->Write( NETLIST_FULLMESSAGES_KEY, (long) m_reportAll );
} }
void DIALOG_NETLIST::OnOpenNetlistClick( wxCommandEvent& event ) void DIALOG_NETLIST::OnOpenNetlistClick( wxCommandEvent& event )
...@@ -176,6 +180,7 @@ void DIALOG_NETLIST::OnReadNetlistFileClick( wxCommandEvent& event ) ...@@ -176,6 +180,7 @@ void DIALOG_NETLIST::OnReadNetlistFileClick( wxCommandEvent& event )
} }
WX_TEXT_CTRL_REPORTER reporter( m_MessageWindow ); WX_TEXT_CTRL_REPORTER reporter( m_MessageWindow );
reporter.SetReportAll( m_reportAll );
m_parent->ReadPcbNetlist( netlistFileName, cmpFileName, &reporter, m_parent->ReadPcbNetlist( netlistFileName, cmpFileName, &reporter,
m_ChangeExistingFootprintCtrl->GetSelection() == 1, m_ChangeExistingFootprintCtrl->GetSelection() == 1,
......
...@@ -40,7 +40,9 @@ class DIALOG_NETLIST : public DIALOG_NETLIST_FBP ...@@ -40,7 +40,9 @@ class DIALOG_NETLIST : public DIALOG_NETLIST_FBP
private: private:
PCB_EDIT_FRAME* m_parent; PCB_EDIT_FRAME* m_parent;
wxDC* m_dc; wxDC* m_dc;
bool m_silentMode; bool m_silentMode; // if true, do not display warning message about undo
bool m_reportAll; // If true report all messages,
// false, report only warnings or errors
wxConfig* m_config; wxConfig* m_config;
public: public:
...@@ -96,6 +98,10 @@ private: ...@@ -96,6 +98,10 @@ private:
{ {
m_silentMode = m_checkBoxSilentMode->GetValue(); m_silentMode = m_checkBoxSilentMode->GetValue();
} }
void OnClickFullMessages( wxCommandEvent& event )
{
m_reportAll = m_checkBoxFullMessages->GetValue();
}
void OnUpdateUISaveMessagesToFile( wxUpdateUIEvent& aEvent ); void OnUpdateUISaveMessagesToFile( wxUpdateUIEvent& aEvent );
void OnUpdateUIValidNetlistFile( wxUpdateUIEvent& aEvent ); void OnUpdateUIValidNetlistFile( wxUpdateUIEvent& aEvent );
......
...@@ -72,7 +72,7 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w ...@@ -72,7 +72,7 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w
m_RemoveExtraFootprintsCtrl->SetSelection( 0 ); m_RemoveExtraFootprintsCtrl->SetSelection( 0 );
m_RemoveExtraFootprintsCtrl->SetToolTip( _("Remove footprints found on the Board but not in netlist\nNote: only not locked footprints will be removed") ); m_RemoveExtraFootprintsCtrl->SetToolTip( _("Remove footprints found on the Board but not in netlist\nNote: only not locked footprints will be removed") );
bTracksSizer->Add( m_RemoveExtraFootprintsCtrl, 0, wxALL|wxEXPAND, 5 ); bTracksSizer->Add( m_RemoveExtraFootprintsCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
bnetlistOptSizer->Add( bTracksSizer, 1, wxEXPAND, 5 ); bnetlistOptSizer->Add( bTracksSizer, 1, wxEXPAND, 5 );
...@@ -80,31 +80,12 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w ...@@ -80,31 +80,12 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w
bleftSizer->Add( bnetlistOptSizer, 1, wxEXPAND, 5 ); bleftSizer->Add( bnetlistOptSizer, 1, wxEXPAND, 5 );
wxBoxSizer* bCenterSizer;
bCenterSizer = new wxBoxSizer( wxVERTICAL );
m_checkDryRun = new wxCheckBox( this, wxID_ANY, _("Dry run. Only report changes in message panel"), wxDefaultPosition, wxDefaultSize, 0 );
m_checkDryRun->SetToolTip( _("Dry Run:\nThe netlist is read, but no change is actually made on board.\nChanges are only reported in message panel, for info") );
bCenterSizer->Add( m_checkDryRun, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
m_checkBoxSilentMode = new wxCheckBox( this, wxID_ANY, _("Silent mode"), wxDefaultPosition, wxDefaultSize, 0 );
m_checkBoxSilentMode->SetToolTip( _("Silent mode:\nDo not show the warning message before reading the netlist") );
bCenterSizer->Add( m_checkBoxSilentMode, 0, wxRIGHT|wxLEFT, 5 );
bleftSizer->Add( bCenterSizer, 0, wxALL|wxEXPAND, 5 );
bUpperSizer->Add( bleftSizer, 1, wxEXPAND, 5 ); bUpperSizer->Add( bleftSizer, 1, wxEXPAND, 5 );
wxBoxSizer* bRightSizerButtons; wxBoxSizer* bRightSizerButtons;
bRightSizerButtons = new wxBoxSizer( wxVERTICAL ); bRightSizerButtons = new wxBoxSizer( wxVERTICAL );
m_buttonBrowse = new wxButton( this, ID_OPEN_NELIST, _("Browse Netlist Files"), wxDefaultPosition, wxDefaultSize, 0 );
bRightSizerButtons->Add( m_buttonBrowse, 0, wxEXPAND|wxALL, 5 );
m_buttonRead = new wxButton( this, ID_READ_NETLIST_FILE, _("Read Current Netlist"), wxDefaultPosition, wxDefaultSize, 0 ); m_buttonRead = new wxButton( this, ID_READ_NETLIST_FILE, _("Read Current Netlist"), wxDefaultPosition, wxDefaultSize, 0 );
m_buttonRead->SetDefault(); m_buttonRead->SetDefault();
m_buttonRead->SetToolTip( _("Read the current netlist and update connections and connectivity info") ); m_buttonRead->SetToolTip( _("Read the current netlist and update connections and connectivity info") );
...@@ -128,28 +109,62 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w ...@@ -128,28 +109,62 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w
bRightSizerButtons->Add( m_buttonSaveMessages, 0, wxALL|wxEXPAND, 5 ); bRightSizerButtons->Add( m_buttonSaveMessages, 0, wxALL|wxEXPAND, 5 );
bUpperSizer->Add( bRightSizerButtons, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 ); bUpperSizer->Add( bRightSizerButtons, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
bMainSizer->Add( bUpperSizer, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 ); bMainSizer->Add( bUpperSizer, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
wxBoxSizer* bLowerSizer; m_staticline11 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
bLowerSizer = new wxBoxSizer( wxVERTICAL ); bMainSizer->Add( m_staticline11, 0, wxEXPAND | wxALL, 5 );
wxBoxSizer* bCenterSizer;
bCenterSizer = new wxBoxSizer( wxVERTICAL );
m_checkDryRun = new wxCheckBox( this, wxID_ANY, _("Dry run. Only report changes in message panel"), wxDefaultPosition, wxDefaultSize, 0 );
m_checkDryRun->SetToolTip( _("Dry Run:\nThe netlist is read, but no change is actually made on board.\nChanges are only reported in message panel, for info") );
bCenterSizer->Add( m_checkDryRun, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
m_checkBoxSilentMode = new wxCheckBox( this, wxID_ANY, _("Silent mode"), wxDefaultPosition, wxDefaultSize, 0 );
m_checkBoxSilentMode->SetToolTip( _("Silent mode:\nDo not show the warning message before reading the netlist") );
bCenterSizer->Add( m_checkBoxSilentMode, 0, wxRIGHT|wxLEFT, 5 );
m_checkBoxFullMessages = new wxCheckBox( this, wxID_ANY, _("Display all messages"), wxDefaultPosition, wxDefaultSize, 0 );
m_checkBoxFullMessages->SetValue(true);
m_checkBoxFullMessages->SetToolTip( _("Messages filter:\nIf checked: show all messages when reading the netlist\nIf not checked: show only warning or error messages") );
bCenterSizer->Add( m_checkBoxFullMessages, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
bMainSizer->Add( bCenterSizer, 0, wxALL|wxEXPAND, 5 );
m_staticline1 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL ); m_staticline1 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
bLowerSizer->Add( m_staticline1, 0, wxEXPAND | wxALL, 5 ); bMainSizer->Add( m_staticline1, 0, wxEXPAND | wxALL, 5 );
wxBoxSizer* bLowerSizer;
bLowerSizer = new wxBoxSizer( wxVERTICAL );
m_staticTextNetfilename = new wxStaticText( this, wxID_ANY, _("Netlist File:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextNetfilename = new wxStaticText( this, wxID_ANY, _("Netlist File:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextNetfilename->Wrap( -1 ); m_staticTextNetfilename->Wrap( -1 );
bLowerSizer->Add( m_staticTextNetfilename, 0, wxRIGHT|wxLEFT, 5 ); bLowerSizer->Add( m_staticTextNetfilename, 0, wxRIGHT|wxLEFT, 5 );
wxBoxSizer* bSizerNetlistFilename;
bSizerNetlistFilename = new wxBoxSizer( wxHORIZONTAL );
m_NetlistFilenameCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); m_NetlistFilenameCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
m_NetlistFilenameCtrl->SetMaxLength( 0 ); m_NetlistFilenameCtrl->SetMaxLength( 0 );
bLowerSizer->Add( m_NetlistFilenameCtrl, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); bSizerNetlistFilename->Add( m_NetlistFilenameCtrl, 1, wxEXPAND|wxRIGHT|wxLEFT, 5 );
m_buttonBrowse = new wxButton( this, ID_OPEN_NELIST, _("Browse"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT );
bSizerNetlistFilename->Add( m_buttonBrowse, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
bLowerSizer->Add( bSizerNetlistFilename, 0, wxEXPAND, 5 );
m_staticText1 = new wxStaticText( this, wxID_ANY, _("Messages:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText1 = new wxStaticText( this, wxID_ANY, _("Messages:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticText1->Wrap( -1 ); m_staticText1->Wrap( -1 );
bLowerSizer->Add( m_staticText1, 0, wxRIGHT|wxLEFT, 5 ); bLowerSizer->Add( m_staticText1, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
m_MessageWindow = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_CHARWRAP|wxTE_MULTILINE|wxTE_READONLY|wxTE_WORDWRAP ); m_MessageWindow = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_CHARWRAP|wxTE_MULTILINE|wxTE_READONLY|wxTE_WORDWRAP );
m_MessageWindow->SetMaxLength( 0 ); m_MessageWindow->SetMaxLength( 0 );
...@@ -166,8 +181,6 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w ...@@ -166,8 +181,6 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w
bMainSizer->Fit( this ); bMainSizer->Fit( this );
// Connect Events // Connect Events
m_checkBoxSilentMode->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnClickSilentMode ), NULL, this );
m_buttonBrowse->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnOpenNetlistClick ), NULL, this );
m_buttonRead->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnReadNetlistFileClick ), NULL, this ); m_buttonRead->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnReadNetlistFileClick ), NULL, this );
m_buttonRead->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUIValidNetlistFile ), NULL, this ); m_buttonRead->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUIValidNetlistFile ), NULL, this );
m_buttonClose->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnCancelClick ), NULL, this ); m_buttonClose->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnCancelClick ), NULL, this );
...@@ -177,13 +190,14 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w ...@@ -177,13 +190,14 @@ DIALOG_NETLIST_FBP::DIALOG_NETLIST_FBP( wxWindow* parent, wxWindowID id, const w
m_buttonRebild->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUIValidNetlistFile ), NULL, this ); m_buttonRebild->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUIValidNetlistFile ), NULL, this );
m_buttonSaveMessages->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnSaveMessagesToFile ), NULL, this ); m_buttonSaveMessages->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnSaveMessagesToFile ), NULL, this );
m_buttonSaveMessages->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUISaveMessagesToFile ), NULL, this ); m_buttonSaveMessages->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUISaveMessagesToFile ), NULL, this );
m_checkBoxSilentMode->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnClickSilentMode ), NULL, this );
m_checkBoxFullMessages->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnClickFullMessages ), NULL, this );
m_buttonBrowse->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnOpenNetlistClick ), NULL, this );
} }
DIALOG_NETLIST_FBP::~DIALOG_NETLIST_FBP() DIALOG_NETLIST_FBP::~DIALOG_NETLIST_FBP()
{ {
// Disconnect Events // Disconnect Events
m_checkBoxSilentMode->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnClickSilentMode ), NULL, this );
m_buttonBrowse->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnOpenNetlistClick ), NULL, this );
m_buttonRead->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnReadNetlistFileClick ), NULL, this ); m_buttonRead->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnReadNetlistFileClick ), NULL, this );
m_buttonRead->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUIValidNetlistFile ), NULL, this ); m_buttonRead->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUIValidNetlistFile ), NULL, this );
m_buttonClose->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnCancelClick ), NULL, this ); m_buttonClose->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnCancelClick ), NULL, this );
...@@ -193,5 +207,8 @@ DIALOG_NETLIST_FBP::~DIALOG_NETLIST_FBP() ...@@ -193,5 +207,8 @@ DIALOG_NETLIST_FBP::~DIALOG_NETLIST_FBP()
m_buttonRebild->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUIValidNetlistFile ), NULL, this ); m_buttonRebild->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUIValidNetlistFile ), NULL, this );
m_buttonSaveMessages->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnSaveMessagesToFile ), NULL, this ); m_buttonSaveMessages->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnSaveMessagesToFile ), NULL, this );
m_buttonSaveMessages->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUISaveMessagesToFile ), NULL, this ); m_buttonSaveMessages->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_NETLIST_FBP::OnUpdateUISaveMessagesToFile ), NULL, this );
m_checkBoxSilentMode->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnClickSilentMode ), NULL, this );
m_checkBoxFullMessages->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnClickFullMessages ), NULL, this );
m_buttonBrowse->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_NETLIST_FBP::OnOpenNetlistClick ), NULL, this );
} }
...@@ -500,7 +500,7 @@ ...@@ -500,7 +500,7 @@
</object> </object>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxALL|wxEXPAND</property> <property name="flag">wxEXPAND|wxTOP|wxRIGHT|wxLEFT</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxRadioBox" expanded="1"> <object class="wxRadioBox" expanded="1">
<property name="BottomDockable">1</property> <property name="BottomDockable">1</property>
...@@ -592,292 +592,17 @@ ...@@ -592,292 +592,17 @@
</object> </object>
</object> </object>
</object> </object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxALL|wxEXPAND</property>
<property name="proportion">0</property>
<object class="wxBoxSizer" expanded="1">
<property name="minimum_size"></property>
<property name="name">bCenterSizer</property>
<property name="orient">wxVERTICAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxBOTTOM|wxRIGHT|wxLEFT</property>
<property name="proportion">0</property>
<object class="wxCheckBox" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="checked">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="label">Dry run. Only report changes in message panel</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_checkDryRun</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip">Dry Run:&#x0A;The netlist is read, but no change is actually made on board.&#x0A;Changes are only reported in message panel, for info</property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnChar"></event>
<event name="OnCheckBox"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxRIGHT|wxLEFT</property>
<property name="proportion">0</property>
<object class="wxCheckBox" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="checked">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="label">Silent mode</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_checkBoxSilentMode</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip">Silent mode:&#x0A;Do not show the warning message before reading the netlist</property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnChar"></event>
<event name="OnCheckBox">OnClickSilentMode</event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
</object>
</object>
</object> </object>
</object> </object>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT</property> <property name="flag">wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxBoxSizer" expanded="1"> <object class="wxBoxSizer" expanded="1">
<property name="minimum_size"></property> <property name="minimum_size"></property>
<property name="name">bRightSizerButtons</property> <property name="name">bRightSizerButtons</property>
<property name="orient">wxVERTICAL</property> <property name="orient">wxVERTICAL</property>
<property name="permission">none</property> <property name="permission">none</property>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxEXPAND|wxALL</property>
<property name="proportion">0</property>
<object class="wxButton" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default">0</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">ID_OPEN_NELIST</property>
<property name="label">Browse Netlist Files</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_buttonBrowse</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnButtonClick">OnOpenNetlistClick</event>
<event name="OnChar"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxEXPAND|wxALL</property> <property name="flag">wxEXPAND|wxALL</property>
...@@ -1324,18 +1049,99 @@ ...@@ -1324,18 +1049,99 @@
</object> </object>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT</property> <property name="flag">wxEXPAND | wxALL</property>
<property name="proportion">1</property> <property name="proportion">0</property>
<object class="wxStaticLine" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_staticline11</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style">wxLI_HORIZONTAL</property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnChar"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxALL|wxEXPAND</property>
<property name="proportion">0</property>
<object class="wxBoxSizer" expanded="1"> <object class="wxBoxSizer" expanded="1">
<property name="minimum_size"></property> <property name="minimum_size"></property>
<property name="name">bLowerSizer</property> <property name="name">bCenterSizer</property>
<property name="orient">wxVERTICAL</property> <property name="orient">wxVERTICAL</property>
<property name="permission">none</property> <property name="permission">none</property>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxEXPAND | wxALL</property> <property name="flag">wxBOTTOM|wxRIGHT|wxLEFT</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxStaticLine" expanded="1"> <object class="wxCheckBox" expanded="1">
<property name="BottomDockable">1</property> <property name="BottomDockable">1</property>
<property name="LeftDockable">1</property> <property name="LeftDockable">1</property>
<property name="RightDockable">1</property> <property name="RightDockable">1</property>
...@@ -1349,6 +1155,7 @@ ...@@ -1349,6 +1155,7 @@
<property name="caption"></property> <property name="caption"></property>
<property name="caption_visible">1</property> <property name="caption_visible">1</property>
<property name="center_pane">0</property> <property name="center_pane">0</property>
<property name="checked">0</property>
<property name="close_button">1</property> <property name="close_button">1</property>
<property name="context_help"></property> <property name="context_help"></property>
<property name="context_menu">1</property> <property name="context_menu">1</property>
...@@ -1363,6 +1170,7 @@ ...@@ -1363,6 +1170,7 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Dry run. Only report changes in message panel</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>
<property name="maximum_size"></property> <property name="maximum_size"></property>
...@@ -1370,7 +1178,7 @@ ...@@ -1370,7 +1178,7 @@
<property name="minimize_button">0</property> <property name="minimize_button">0</property>
<property name="minimum_size"></property> <property name="minimum_size"></property>
<property name="moveable">1</property> <property name="moveable">1</property>
<property name="name">m_staticline1</property> <property name="name">m_checkDryRun</property>
<property name="pane_border">1</property> <property name="pane_border">1</property>
<property name="pane_position"></property> <property name="pane_position"></property>
<property name="pane_size"></property> <property name="pane_size"></property>
...@@ -1380,14 +1188,19 @@ ...@@ -1380,14 +1188,19 @@
<property name="resize">Resizable</property> <property name="resize">Resizable</property>
<property name="show">1</property> <property name="show">1</property>
<property name="size"></property> <property name="size"></property>
<property name="style">wxLI_HORIZONTAL</property> <property name="style"></property>
<property name="subclass"></property> <property name="subclass"></property>
<property name="toolbar_pane">0</property> <property name="toolbar_pane">0</property>
<property name="tooltip"></property> <property name="tooltip">Dry Run:&#x0A;The netlist is read, but no change is actually made on board.&#x0A;Changes are only reported in message panel, for info</property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="window_extra_style"></property> <property name="window_extra_style"></property>
<property name="window_name"></property> <property name="window_name"></property>
<property name="window_style"></property> <property name="window_style"></property>
<event name="OnChar"></event> <event name="OnChar"></event>
<event name="OnCheckBox"></event>
<event name="OnEnterWindow"></event> <event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event> <event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event> <event name="OnKeyDown"></event>
...@@ -1416,7 +1229,7 @@ ...@@ -1416,7 +1229,7 @@
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxRIGHT|wxLEFT</property> <property name="flag">wxRIGHT|wxLEFT</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxStaticText" expanded="1"> <object class="wxCheckBox" expanded="1">
<property name="BottomDockable">1</property> <property name="BottomDockable">1</property>
<property name="LeftDockable">1</property> <property name="LeftDockable">1</property>
<property name="RightDockable">1</property> <property name="RightDockable">1</property>
...@@ -1430,6 +1243,7 @@ ...@@ -1430,6 +1243,7 @@
<property name="caption"></property> <property name="caption"></property>
<property name="caption_visible">1</property> <property name="caption_visible">1</property>
<property name="center_pane">0</property> <property name="center_pane">0</property>
<property name="checked">0</property>
<property name="close_button">1</property> <property name="close_button">1</property>
<property name="context_help"></property> <property name="context_help"></property>
<property name="context_menu">1</property> <property name="context_menu">1</property>
...@@ -1444,7 +1258,7 @@ ...@@ -1444,7 +1258,7 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Netlist File:</property> <property name="label">Silent mode</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>
<property name="maximum_size"></property> <property name="maximum_size"></property>
...@@ -1452,7 +1266,7 @@ ...@@ -1452,7 +1266,7 @@
<property name="minimize_button">0</property> <property name="minimize_button">0</property>
<property name="minimum_size"></property> <property name="minimum_size"></property>
<property name="moveable">1</property> <property name="moveable">1</property>
<property name="name">m_staticTextNetfilename</property> <property name="name">m_checkBoxSilentMode</property>
<property name="pane_border">1</property> <property name="pane_border">1</property>
<property name="pane_position"></property> <property name="pane_position"></property>
<property name="pane_size"></property> <property name="pane_size"></property>
...@@ -1465,12 +1279,16 @@ ...@@ -1465,12 +1279,16 @@
<property name="style"></property> <property name="style"></property>
<property name="subclass"></property> <property name="subclass"></property>
<property name="toolbar_pane">0</property> <property name="toolbar_pane">0</property>
<property name="tooltip"></property> <property name="tooltip">Silent mode:&#x0A;Do not show the warning message before reading the netlist</property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="window_extra_style"></property> <property name="window_extra_style"></property>
<property name="window_name"></property> <property name="window_name"></property>
<property name="window_style"></property> <property name="window_style"></property>
<property name="wrap">-1</property>
<event name="OnChar"></event> <event name="OnChar"></event>
<event name="OnCheckBox">OnClickSilentMode</event>
<event name="OnEnterWindow"></event> <event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event> <event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event> <event name="OnKeyDown"></event>
...@@ -1497,9 +1315,9 @@ ...@@ -1497,9 +1315,9 @@
</object> </object>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT</property> <property name="flag">wxTOP|wxRIGHT|wxLEFT</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxTextCtrl" expanded="1"> <object class="wxCheckBox" expanded="1">
<property name="BottomDockable">1</property> <property name="BottomDockable">1</property>
<property name="LeftDockable">1</property> <property name="LeftDockable">1</property>
<property name="RightDockable">1</property> <property name="RightDockable">1</property>
...@@ -1513,6 +1331,7 @@ ...@@ -1513,6 +1331,7 @@
<property name="caption"></property> <property name="caption"></property>
<property name="caption_visible">1</property> <property name="caption_visible">1</property>
<property name="center_pane">0</property> <property name="center_pane">0</property>
<property name="checked">1</property>
<property name="close_button">1</property> <property name="close_button">1</property>
<property name="context_help"></property> <property name="context_help"></property>
<property name="context_menu">1</property> <property name="context_menu">1</property>
...@@ -1527,15 +1346,15 @@ ...@@ -1527,15 +1346,15 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Display all messages</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>
<property name="maximum_size"></property> <property name="maximum_size"></property>
<property name="maxlength">0</property>
<property name="min_size"></property> <property name="min_size"></property>
<property name="minimize_button">0</property> <property name="minimize_button">0</property>
<property name="minimum_size"></property> <property name="minimum_size"></property>
<property name="moveable">1</property> <property name="moveable">1</property>
<property name="name">m_NetlistFilenameCtrl</property> <property name="name">m_checkBoxFullMessages</property>
<property name="pane_border">1</property> <property name="pane_border">1</property>
<property name="pane_position"></property> <property name="pane_position"></property>
<property name="pane_size"></property> <property name="pane_size"></property>
...@@ -1548,16 +1367,16 @@ ...@@ -1548,16 +1367,16 @@
<property name="style"></property> <property name="style"></property>
<property name="subclass"></property> <property name="subclass"></property>
<property name="toolbar_pane">0</property> <property name="toolbar_pane">0</property>
<property name="tooltip"></property> <property name="tooltip">Messages filter:&#x0A;If checked: show all messages when reading the netlist&#x0A;If not checked: show only warning or error messages</property>
<property name="validator_data_type"></property> <property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property> <property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property> <property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property> <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property> <property name="window_extra_style"></property>
<property name="window_name"></property> <property name="window_name"></property>
<property name="window_style"></property> <property name="window_style"></property>
<event name="OnChar"></event> <event name="OnChar"></event>
<event name="OnCheckBox">OnClickFullMessages</event>
<event name="OnEnterWindow"></event> <event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event> <event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event> <event name="OnKeyDown"></event>
...@@ -1579,17 +1398,378 @@ ...@@ -1579,17 +1398,378 @@
<event name="OnRightUp"></event> <event name="OnRightUp"></event>
<event name="OnSetFocus"></event> <event name="OnSetFocus"></event>
<event name="OnSize"></event> <event name="OnSize"></event>
<event name="OnText"></event>
<event name="OnTextEnter"></event>
<event name="OnTextMaxLen"></event>
<event name="OnTextURL"></event>
<event name="OnUpdateUI"></event> <event name="OnUpdateUI"></event>
</object> </object>
</object> </object>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxEXPAND | wxALL</property>
<property name="proportion">0</property>
<object class="wxStaticLine" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_staticline1</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style">wxLI_HORIZONTAL</property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnChar"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT</property>
<property name="proportion">1</property>
<object class="wxBoxSizer" expanded="1">
<property name="minimum_size"></property>
<property name="name">bLowerSizer</property>
<property name="orient">wxVERTICAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxRIGHT|wxLEFT</property> <property name="flag">wxRIGHT|wxLEFT</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxStaticText" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="label">Netlist File:</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_staticTextNetfilename</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<property name="wrap">-1</property>
<event name="OnChar"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxEXPAND</property>
<property name="proportion">0</property>
<object class="wxBoxSizer" expanded="1">
<property name="minimum_size"></property>
<property name="name">bSizerNetlistFilename</property>
<property name="orient">wxHORIZONTAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxEXPAND|wxRIGHT|wxLEFT</property>
<property name="proportion">1</property>
<object class="wxTextCtrl" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="maxlength">0</property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_NetlistFilenameCtrl</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnChar"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnText"></event>
<event name="OnTextEnter"></event>
<event name="OnTextMaxLen"></event>
<event name="OnTextURL"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxEXPAND|wxRIGHT|wxLEFT</property>
<property name="proportion">0</property>
<object class="wxButton" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default">0</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">ID_OPEN_NELIST</property>
<property name="label">Browse</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_buttonBrowse</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style">wxBU_EXACTFIT</property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnButtonClick">OnOpenNetlistClick</event>
<event name="OnChar"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxTOP|wxRIGHT|wxLEFT</property>
<property name="proportion">0</property>
<object class="wxStaticText" expanded="1"> <object class="wxStaticText" expanded="1">
<property name="BottomDockable">1</property> <property name="BottomDockable">1</property>
<property name="LeftDockable">1</property> <property name="LeftDockable">1</property>
......
...@@ -21,9 +21,9 @@ class DIALOG_SHIM; ...@@ -21,9 +21,9 @@ class DIALOG_SHIM;
#include <wx/colour.h> #include <wx/colour.h>
#include <wx/settings.h> #include <wx/settings.h>
#include <wx/sizer.h> #include <wx/sizer.h>
#include <wx/checkbox.h>
#include <wx/button.h> #include <wx/button.h>
#include <wx/statline.h> #include <wx/statline.h>
#include <wx/checkbox.h>
#include <wx/stattext.h> #include <wx/stattext.h>
#include <wx/textctrl.h> #include <wx/textctrl.h>
#include <wx/dialog.h> #include <wx/dialog.h>
...@@ -40,10 +40,10 @@ class DIALOG_NETLIST_FBP : public DIALOG_SHIM ...@@ -40,10 +40,10 @@ class DIALOG_NETLIST_FBP : public DIALOG_SHIM
protected: protected:
enum enum
{ {
ID_OPEN_NELIST = 1000, ID_READ_NETLIST_FILE = 1000,
ID_READ_NETLIST_FILE,
ID_TEST_NETLIST, ID_TEST_NETLIST,
ID_COMPILE_RATSNEST ID_COMPILE_RATSNEST,
ID_OPEN_NELIST
}; };
wxRadioBox* m_Select_By_Timestamp; wxRadioBox* m_Select_By_Timestamp;
...@@ -51,23 +51,23 @@ class DIALOG_NETLIST_FBP : public DIALOG_SHIM ...@@ -51,23 +51,23 @@ class DIALOG_NETLIST_FBP : public DIALOG_SHIM
wxRadioBox* m_ChangeExistingFootprintCtrl; wxRadioBox* m_ChangeExistingFootprintCtrl;
wxRadioBox* m_DeleteBadTracks; wxRadioBox* m_DeleteBadTracks;
wxRadioBox* m_RemoveExtraFootprintsCtrl; wxRadioBox* m_RemoveExtraFootprintsCtrl;
wxCheckBox* m_checkDryRun;
wxCheckBox* m_checkBoxSilentMode;
wxButton* m_buttonBrowse;
wxButton* m_buttonRead; wxButton* m_buttonRead;
wxButton* m_buttonClose; wxButton* m_buttonClose;
wxButton* m_buttonFPTest; wxButton* m_buttonFPTest;
wxButton* m_buttonRebild; wxButton* m_buttonRebild;
wxButton* m_buttonSaveMessages; wxButton* m_buttonSaveMessages;
wxStaticLine* m_staticline11;
wxCheckBox* m_checkDryRun;
wxCheckBox* m_checkBoxSilentMode;
wxCheckBox* m_checkBoxFullMessages;
wxStaticLine* m_staticline1; wxStaticLine* m_staticline1;
wxStaticText* m_staticTextNetfilename; wxStaticText* m_staticTextNetfilename;
wxTextCtrl* m_NetlistFilenameCtrl; wxTextCtrl* m_NetlistFilenameCtrl;
wxButton* m_buttonBrowse;
wxStaticText* m_staticText1; wxStaticText* m_staticText1;
wxTextCtrl* m_MessageWindow; wxTextCtrl* m_MessageWindow;
// Virtual event handlers, overide them in your derived class // Virtual event handlers, overide them in your derived class
virtual void OnClickSilentMode( wxCommandEvent& event ) { event.Skip(); }
virtual void OnOpenNetlistClick( wxCommandEvent& event ) { event.Skip(); }
virtual void OnReadNetlistFileClick( wxCommandEvent& event ) { event.Skip(); } virtual void OnReadNetlistFileClick( wxCommandEvent& event ) { event.Skip(); }
virtual void OnUpdateUIValidNetlistFile( wxUpdateUIEvent& event ) { event.Skip(); } virtual void OnUpdateUIValidNetlistFile( wxUpdateUIEvent& event ) { event.Skip(); }
virtual void OnCancelClick( wxCommandEvent& event ) { event.Skip(); } virtual void OnCancelClick( wxCommandEvent& event ) { event.Skip(); }
...@@ -75,6 +75,9 @@ class DIALOG_NETLIST_FBP : public DIALOG_SHIM ...@@ -75,6 +75,9 @@ class DIALOG_NETLIST_FBP : public DIALOG_SHIM
virtual void OnCompileRatsnestClick( wxCommandEvent& event ) { event.Skip(); } virtual void OnCompileRatsnestClick( wxCommandEvent& event ) { event.Skip(); }
virtual void OnSaveMessagesToFile( wxCommandEvent& event ) { event.Skip(); } virtual void OnSaveMessagesToFile( wxCommandEvent& event ) { event.Skip(); }
virtual void OnUpdateUISaveMessagesToFile( wxUpdateUIEvent& event ) { event.Skip(); } virtual void OnUpdateUISaveMessagesToFile( wxUpdateUIEvent& event ) { event.Skip(); }
virtual void OnClickSilentMode( wxCommandEvent& event ) { event.Skip(); }
virtual void OnClickFullMessages( wxCommandEvent& event ) { event.Skip(); }
virtual void OnOpenNetlistClick( wxCommandEvent& event ) { event.Skip(); }
public: public:
......
...@@ -122,6 +122,7 @@ void PCB_EDIT_FRAME::Process_Special_Functions( wxCommandEvent& event ) ...@@ -122,6 +122,7 @@ void PCB_EDIT_FRAME::Process_Special_Functions( wxCommandEvent& event )
case ID_POPUP_PCB_SELECT_LAYER_PAIR: case ID_POPUP_PCB_SELECT_LAYER_PAIR:
case ID_POPUP_PCB_SELECT_NO_CU_LAYER: case ID_POPUP_PCB_SELECT_NO_CU_LAYER:
case ID_POPUP_PCB_MOVE_TRACK_NODE: case ID_POPUP_PCB_MOVE_TRACK_NODE:
case ID_POPUP_PCB_MOVE_TEXTEPCB_REQUEST:
case ID_POPUP_PCB_DRAG_TRACK_SEGMENT_KEEP_SLOPE: case ID_POPUP_PCB_DRAG_TRACK_SEGMENT_KEEP_SLOPE:
case ID_POPUP_PCB_DRAG_TRACK_SEGMENT: case ID_POPUP_PCB_DRAG_TRACK_SEGMENT:
case ID_POPUP_PCB_MOVE_TRACK_SEGMENT: case ID_POPUP_PCB_MOVE_TRACK_SEGMENT:
...@@ -145,6 +146,10 @@ void PCB_EDIT_FRAME::Process_Special_Functions( wxCommandEvent& event ) ...@@ -145,6 +146,10 @@ void PCB_EDIT_FRAME::Process_Special_Functions( wxCommandEvent& event )
case ID_POPUP_PCB_EDIT_DRAWING: case ID_POPUP_PCB_EDIT_DRAWING:
case ID_POPUP_PCB_GETINFO_MARKER: case ID_POPUP_PCB_GETINFO_MARKER:
case ID_POPUP_PCB_MOVE_TEXT_DIMENSION_REQUEST: case ID_POPUP_PCB_MOVE_TEXT_DIMENSION_REQUEST:
case ID_POPUP_PCB_DRAG_MODULE_REQUEST:
case ID_POPUP_PCB_MOVE_MODULE_REQUEST:
case ID_POPUP_PCB_MOVE_TEXTMODULE_REQUEST:
case ID_POPUP_PCB_MOVE_MIRE_REQUEST:
break; break;
case ID_POPUP_CANCEL_CURRENT_COMMAND: case ID_POPUP_CANCEL_CURRENT_COMMAND:
...@@ -286,11 +291,6 @@ void PCB_EDIT_FRAME::Process_Special_Functions( wxCommandEvent& event ) ...@@ -286,11 +291,6 @@ void PCB_EDIT_FRAME::Process_Special_Functions( wxCommandEvent& event )
InstallNetlistFrame( &dc ); InstallNetlistFrame( &dc );
break; break;
case ID_GET_TOOLS:
// InstalloolsFrame(this, wxPoint(-1,-1) );
break;
case ID_FIND_ITEMS: case ID_FIND_ITEMS:
InstallFindFrame(); InstallFindFrame();
break; break;
......
...@@ -56,6 +56,11 @@ void PCB_EDIT_FRAME::ReadPcbNetlist( const wxString& aNetlistFileName, ...@@ -56,6 +56,11 @@ void PCB_EDIT_FRAME::ReadPcbNetlist( const wxString& aNetlistFileName,
NETLIST netlist; NETLIST netlist;
NETLIST_READER* netlistReader; NETLIST_READER* netlistReader;
netlist.SetIsDryRun( aIsDryRun );
netlist.SetFindByTimeStamp( aSelectByTimeStamp );
netlist.SetDeleteExtraFootprints( aDeleteExtraFootprints );
netlist.SetReplaceFootprints( aChangeFootprints );
try try
{ {
netlistReader = NETLIST_READER::GetNetlistReader( &netlist, aNetlistFileName, netlistReader = NETLIST_READER::GetNetlistReader( &netlist, aNetlistFileName,
...@@ -80,11 +85,6 @@ void PCB_EDIT_FRAME::ReadPcbNetlist( const wxString& aNetlistFileName, ...@@ -80,11 +85,6 @@ void PCB_EDIT_FRAME::ReadPcbNetlist( const wxString& aNetlistFileName,
return; return;
} }
netlist.SetIsDryRun( aIsDryRun );
netlist.SetFindByTimeStamp( aSelectByTimeStamp );
netlist.SetDeleteExtraFootprints( aDeleteExtraFootprints );
netlist.SetReplaceFootprints( aChangeFootprints );
// Clear undo and redo lists to avoid inconsistencies between lists // Clear undo and redo lists to avoid inconsistencies between lists
if( !netlist.IsDryRun() ) if( !netlist.IsDryRun() )
GetScreen()->ClearUndoRedoList(); GetScreen()->ClearUndoRedoList();
...@@ -164,7 +164,6 @@ MODULE* PCB_EDIT_FRAME::ListAndSelectModuleName() ...@@ -164,7 +164,6 @@ MODULE* PCB_EDIT_FRAME::ListAndSelectModuleName()
void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter ) void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter )
throw( IO_ERROR, PARSE_ERROR ) throw( IO_ERROR, PARSE_ERROR )
{ {
bool loadFootprint;
wxString msg; wxString msg;
wxString lastFootprintLibName; wxString lastFootprintLibName;
COMPONENT* component; COMPONENT* component;
...@@ -204,8 +203,27 @@ void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -204,8 +203,27 @@ void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter )
else else
fpOnBoard = m_Pcb->FindModule( aNetlist.GetComponent( ii )->GetReference() ); fpOnBoard = m_Pcb->FindModule( aNetlist.GetComponent( ii )->GetReference() );
loadFootprint = (fpOnBoard == NULL) || bool footprintMisMatch = fpOnBoard &&
(fpOnBoard->GetPath() != component->GetFootprintName()); fpOnBoard->GetLibRef() != component->GetFootprintName();
if( footprintMisMatch && !aNetlist.GetReplaceFootprints() )
{
if( aReporter )
{
msg.Printf( _( "* Warning: component `%s` has footprint <%s> and should be <%s>\n" ),
GetChars( component->GetReference() ),
GetChars( fpOnBoard->GetLibRef() ),
GetChars( component->GetFootprintName() ) );
aReporter->Report( msg );
}
continue;
}
if( !aNetlist.GetReplaceFootprints() )
footprintMisMatch = false;
bool loadFootprint = (fpOnBoard == NULL) || footprintMisMatch;
if( loadFootprint && (component->GetFootprintName() != lastFootprintLibName) ) if( loadFootprint && (component->GetFootprintName() != lastFootprintLibName) )
{ {
...@@ -244,7 +262,6 @@ void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -244,7 +262,6 @@ void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter )
{ {
if( aReporter ) if( aReporter )
{ {
wxString msg;
msg.Printf( _( "*** Warning: component `%s` footprint <%s> was not found in " msg.Printf( _( "*** Warning: component `%s` footprint <%s> was not found in "
"any libraries. ***\n" ), "any libraries. ***\n" ),
GetChars( component->GetReference() ), GetChars( component->GetReference() ),
...@@ -274,7 +291,6 @@ void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -274,7 +291,6 @@ void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter )
void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter ) void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter )
throw( IO_ERROR, PARSE_ERROR ) throw( IO_ERROR, PARSE_ERROR )
{ {
bool loadFootprint;
wxString msg; wxString msg;
wxString lastFootprintLibName; wxString lastFootprintLibName;
COMPONENT* component; COMPONENT* component;
...@@ -309,8 +325,27 @@ void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter ) ...@@ -309,8 +325,27 @@ void PCB_EDIT_FRAME::loadFootprints( NETLIST& aNetlist, REPORTER* aReporter )
else else
fpOnBoard = m_Pcb->FindModule( aNetlist.GetComponent( ii )->GetReference() ); fpOnBoard = m_Pcb->FindModule( aNetlist.GetComponent( ii )->GetReference() );
loadFootprint = (fpOnBoard == NULL) || bool footprintMisMatch = fpOnBoard &&
(fpOnBoard->GetPath() != component->GetFootprintName()); fpOnBoard->GetLibRef() != component->GetFootprintName();
if( footprintMisMatch && !aNetlist.GetReplaceFootprints() )
{
if( aReporter )
{
msg.Printf( _( "* Warning: component `%s` has footprint <%s> and should be <%s>\n" ),
GetChars( component->GetReference() ),
GetChars( fpOnBoard->GetLibRef() ),
GetChars( component->GetFootprintName() ) );
aReporter->Report( msg );
}
continue;
}
if( !aNetlist.GetReplaceFootprints() )
footprintMisMatch = false;
bool loadFootprint = (fpOnBoard == NULL) || footprintMisMatch;
if( loadFootprint && (component->GetFootprintName() != lastFootprintLibName) ) if( loadFootprint && (component->GetFootprintName() != lastFootprintLibName) )
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment