pato-z80-home-computer/pat80-io-devices/uart/hardware/uart-decoding-logic.circ

337 lines
12 KiB
Plaintext
Raw Normal View History

2021-03-05 08:58:22 +01:00
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project source="2.7.1" version="1.0">
This file is intended to be loaded by Logisim (http://www.cburch.com/logisim/).
2021-03-15 07:30:36 +01:00
<lib desc="#Wiring" name="0">
<tool name="Splitter">
<a name="fanout" val="4"/>
<a name="incoming" val="4"/>
</tool>
</lib>
2021-03-05 08:58:22 +01:00
<lib desc="#Gates" name="1">
<tool name="AND Gate">
2021-03-15 07:30:36 +01:00
<a name="facing" val="west"/>
2021-03-05 08:58:22 +01:00
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</tool>
</lib>
<lib desc="#Plexers" name="2"/>
<lib desc="#Arithmetic" name="3"/>
<lib desc="#Memory" name="4">
2021-03-15 07:30:36 +01:00
<tool name="Counter">
<a name="width" val="4"/>
<a name="max" val="0xf"/>
<a name="trigger" val="falling"/>
<a name="label" val="Clock demultiplier"/>
</tool>
2021-03-05 08:58:22 +01:00
<tool name="Shift Register">
<a name="parallel" val="false"/>
</tool>
</lib>
<lib desc="#I/O" name="5"/>
<lib desc="#Base" name="6">
<tool name="Text Tool">
<a name="text" val=""/>
<a name="font" val="SansSerif plain 12"/>
<a name="halign" val="center"/>
<a name="valign" val="base"/>
</tool>
</lib>
<main name="main"/>
<options>
<a name="gateUndefined" val="ignore"/>
<a name="simlimit" val="1000"/>
<a name="simrand" val="0"/>
</options>
<mappings>
<tool lib="6" map="Button2" name="Menu Tool"/>
<tool lib="6" map="Button3" name="Menu Tool"/>
<tool lib="6" map="Ctrl Button1" name="Menu Tool"/>
</mappings>
<toolbar>
<tool lib="6" name="Poke Tool"/>
<tool lib="6" name="Edit Tool"/>
<tool lib="6" name="Text Tool">
<a name="text" val=""/>
<a name="font" val="SansSerif plain 12"/>
<a name="halign" val="center"/>
<a name="valign" val="base"/>
</tool>
<sep/>
<tool lib="0" name="Pin">
<a name="tristate" val="false"/>
</tool>
<tool lib="0" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="labelloc" val="east"/>
</tool>
<tool lib="1" name="NOT Gate"/>
<tool lib="1" name="AND Gate"/>
<tool lib="1" name="OR Gate"/>
</toolbar>
<circuit name="main">
<a name="circuit" val="main"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(400,430)" to="(400,500)"/>
<wire from="(610,290)" to="(660,290)"/>
<wire from="(350,370)" to="(350,500)"/>
<wire from="(210,490)" to="(210,500)"/>
2021-03-15 07:30:36 +01:00
<wire from="(880,30)" to="(880,350)"/>
<wire from="(290,370)" to="(290,380)"/>
<wire from="(420,520)" to="(540,520)"/>
<wire from="(330,370)" to="(330,380)"/>
<wire from="(370,370)" to="(370,380)"/>
2021-03-15 07:30:36 +01:00
<wire from="(870,430)" to="(870,460)"/>
<wire from="(390,100)" to="(390,180)"/>
<wire from="(420,180)" to="(420,210)"/>
<wire from="(440,80)" to="(440,110)"/>
<wire from="(410,370)" to="(410,400)"/>
<wire from="(180,410)" to="(180,500)"/>
<wire from="(250,380)" to="(290,380)"/>
2021-03-15 07:30:36 +01:00
<wire from="(200,30)" to="(880,30)"/>
<wire from="(280,90)" to="(320,90)"/>
<wire from="(290,180)" to="(330,180)"/>
<wire from="(400,170)" to="(440,170)"/>
<wire from="(350,100)" to="(350,200)"/>
<wire from="(490,300)" to="(580,300)"/>
2021-03-15 07:30:36 +01:00
<wire from="(860,410)" to="(880,410)"/>
<wire from="(410,110)" to="(440,110)"/>
<wire from="(520,140)" to="(550,140)"/>
<wire from="(380,400)" to="(410,400)"/>
<wire from="(320,190)" to="(340,190)"/>
<wire from="(300,530)" to="(320,530)"/>
<wire from="(410,480)" to="(430,480)"/>
2021-03-15 07:30:36 +01:00
<wire from="(800,420)" to="(830,420)"/>
<wire from="(150,470)" to="(150,520)"/>
<wire from="(490,90)" to="(500,90)"/>
<wire from="(210,490)" to="(220,490)"/>
2021-03-15 07:30:36 +01:00
<wire from="(870,430)" to="(880,430)"/>
<wire from="(440,80)" to="(500,80)"/>
<wire from="(200,490)" to="(200,500)"/>
<wire from="(240,490)" to="(240,500)"/>
<wire from="(270,520)" to="(320,520)"/>
<wire from="(260,390)" to="(310,390)"/>
2021-03-15 07:30:36 +01:00
<wire from="(790,390)" to="(790,460)"/>
<wire from="(410,100)" to="(410,110)"/>
<wire from="(290,260)" to="(290,270)"/>
<wire from="(200,150)" to="(200,300)"/>
<wire from="(220,470)" to="(220,490)"/>
<wire from="(530,100)" to="(530,120)"/>
<wire from="(390,410)" to="(430,410)"/>
<wire from="(380,100)" to="(380,190)"/>
<wire from="(340,100)" to="(340,190)"/>
<wire from="(330,410)" to="(330,500)"/>
2021-03-15 07:30:36 +01:00
<wire from="(810,370)" to="(830,370)"/>
<wire from="(390,180)" to="(420,180)"/>
<wire from="(660,180)" to="(660,290)"/>
<wire from="(400,430)" to="(430,430)"/>
<wire from="(510,100)" to="(510,260)"/>
<wire from="(440,170)" to="(440,210)"/>
<wire from="(330,380)" to="(340,380)"/>
2021-03-15 07:30:36 +01:00
<wire from="(200,150)" to="(280,150)"/>
<wire from="(200,490)" to="(210,490)"/>
<wire from="(280,90)" to="(280,150)"/>
<wire from="(530,120)" to="(610,120)"/>
2021-03-15 07:30:36 +01:00
<wire from="(860,430)" to="(870,430)"/>
<wire from="(790,460)" to="(870,460)"/>
<wire from="(340,380)" to="(340,500)"/>
<wire from="(190,490)" to="(190,500)"/>
<wire from="(230,490)" to="(230,500)"/>
2021-03-15 07:30:36 +01:00
<wire from="(200,80)" to="(320,80)"/>
<wire from="(340,200)" to="(340,210)"/>
<wire from="(380,200)" to="(380,210)"/>
<wire from="(310,370)" to="(310,390)"/>
<wire from="(390,370)" to="(390,390)"/>
2021-03-15 07:30:36 +01:00
<wire from="(880,380)" to="(880,410)"/>
<wire from="(290,180)" to="(290,260)"/>
<wire from="(330,100)" to="(330,180)"/>
<wire from="(200,300)" to="(490,300)"/>
<wire from="(370,100)" to="(370,200)"/>
2021-03-15 07:30:36 +01:00
<wire from="(830,330)" to="(830,370)"/>
<wire from="(640,130)" to="(660,130)"/>
<wire from="(150,570)" to="(300,570)"/>
<wire from="(380,190)" to="(400,190)"/>
<wire from="(580,140)" to="(610,140)"/>
<wire from="(260,390)" to="(260,500)"/>
<wire from="(150,530)" to="(150,570)"/>
<wire from="(430,370)" to="(430,410)"/>
<wire from="(150,520)" to="(170,520)"/>
<wire from="(520,100)" to="(520,140)"/>
2021-03-15 07:30:36 +01:00
<wire from="(610,310)" to="(810,310)"/>
<wire from="(340,200)" to="(350,200)"/>
<wire from="(360,380)" to="(370,380)"/>
<wire from="(410,110)" to="(410,160)"/>
<wire from="(460,160)" to="(460,210)"/>
<wire from="(190,490)" to="(200,490)"/>
<wire from="(230,490)" to="(240,490)"/>
<wire from="(250,380)" to="(250,500)"/>
<wire from="(400,100)" to="(400,170)"/>
2021-03-15 07:30:36 +01:00
<wire from="(140,80)" to="(200,80)"/>
<wire from="(410,160)" to="(460,160)"/>
<wire from="(220,490)" to="(220,500)"/>
<wire from="(320,190)" to="(320,210)"/>
<wire from="(400,190)" to="(400,210)"/>
<wire from="(410,480)" to="(410,500)"/>
2021-03-15 07:30:36 +01:00
<wire from="(800,390)" to="(800,420)"/>
<wire from="(490,90)" to="(490,300)"/>
<wire from="(390,410)" to="(390,500)"/>
<wire from="(660,130)" to="(660,150)"/>
<wire from="(290,260)" to="(510,260)"/>
<wire from="(380,400)" to="(380,500)"/>
<wire from="(180,410)" to="(330,410)"/>
<wire from="(300,570)" to="(640,570)"/>
<wire from="(370,390)" to="(390,390)"/>
<wire from="(180,370)" to="(180,410)"/>
<wire from="(360,100)" to="(360,210)"/>
<wire from="(370,390)" to="(370,500)"/>
<wire from="(300,530)" to="(300,570)"/>
<wire from="(150,530)" to="(170,530)"/>
2021-03-15 07:30:36 +01:00
<wire from="(200,30)" to="(200,80)"/>
<wire from="(370,200)" to="(380,200)"/>
<wire from="(220,490)" to="(230,490)"/>
<wire from="(360,380)" to="(360,500)"/>
<comp lib="0" loc="(410,370)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(290,370)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="1" loc="(880,380)" name="NOT Gate">
<a name="facing" val="south"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="4" loc="(320,80)" name="Shift Register"/>
<comp lib="1" loc="(660,180)" name="NOT Gate">
<a name="facing" val="south"/>
</comp>
<comp lib="0" loc="(880,430)" name="Clock">
<a name="facing" val="west"/>
2021-03-05 08:58:22 +01:00
</comp>
<comp lib="0" loc="(180,370)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
<a name="label" val="Wr"/>
<a name="labelloc" val="north"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(150,470)" name="Power"/>
<comp lib="0" loc="(350,370)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(400,210)" name="Pin">
2021-03-05 08:58:22 +01:00
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(430,430)" name="Ground"/>
<comp lib="0" loc="(340,210)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(440,210)" name="Pin">
2021-03-05 08:58:22 +01:00
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="4" loc="(170,520)" name="Shift Register"/>
<comp lib="0" loc="(360,210)" name="Pin">
2021-03-05 08:58:22 +01:00
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(420,210)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(310,370)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
2021-03-05 08:58:22 +01:00
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="4" loc="(320,520)" name="Shift Register"/>
<comp lib="0" loc="(330,370)" name="Pin">
<a name="facing" val="south"/>
2021-03-05 08:58:22 +01:00
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(390,370)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(370,370)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="4" loc="(500,80)" name="Shift Register"/>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(430,370)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(140,80)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="Rx"/>
</comp>
<comp lib="1" loc="(580,140)" name="NOT Gate"/>
<comp lib="1" loc="(640,130)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(540,520)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
2021-03-05 08:58:22 +01:00
<a name="tristate" val="false"/>
2021-03-15 07:30:36 +01:00
<a name="label" val="Tx"/>
<a name="labelloc" val="east"/>
2021-03-05 08:58:22 +01:00
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="1" loc="(830,420)" name="AND Gate">
<a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(320,210)" name="Pin">
2021-03-05 08:58:22 +01:00
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="1" loc="(580,300)" name="AND Gate">
<a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(220,470)" name="Power"/>
<comp lib="4" loc="(810,370)" name="Counter">
<a name="width" val="4"/>
<a name="max" val="0xf"/>
<a name="trigger" val="falling"/>
<a name="label" val="Clock demultiplier"/>
<a name="labelfont" val="SansSerif plain 10"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(380,210)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="tristate" val="false"/>
2021-03-05 08:58:22 +01:00
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(460,210)" name="Pin">
2021-03-05 08:58:22 +01:00
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="tristate" val="false"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(290,270)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
2021-03-15 07:30:36 +01:00
<a name="label" val="Clear"/>
</comp>
2021-03-15 07:30:36 +01:00
<comp lib="0" loc="(430,480)" name="Power"/>
<comp lib="0" loc="(830,330)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="4"/>
<a name="incoming" val="4"/>
<a name="appear" val="right"/>
</comp>
2021-03-05 08:58:22 +01:00
</circuit>
</project>