<?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/). <lib desc="#Wiring" name="0"> <tool name="Splitter"> <a name="facing" val="west"/> <a name="fanout" val="3"/> <a name="incoming" val="3"/> <a name="appear" val="right"/> </tool> <tool name="Tunnel"> <a name="facing" val="east"/> </tool> </lib> <lib desc="#Gates" name="1"/> <lib desc="#Plexers" name="2"> <tool name="Decoder"> <a name="select" val="3"/> </tool> </lib> <lib desc="#Arithmetic" name="3"/> <lib desc="#Memory" name="4"> <tool name="ROM"> <a name="contents">addr/data: 8 8 0 </a> </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,170)" to="(460,170)"/> <wire from="(490,160)" to="(550,160)"/> <wire from="(670,230)" to="(720,230)"/> <wire from="(670,170)" to="(720,170)"/> <wire from="(530,430)" to="(720,430)"/> <wire from="(220,380)" to="(270,380)"/> <wire from="(340,420)" to="(340,440)"/> <wire from="(570,190)" to="(670,190)"/> <wire from="(570,210)" to="(670,210)"/> <wire from="(530,430)" to="(530,460)"/> <wire from="(670,170)" to="(670,190)"/> <wire from="(670,210)" to="(670,230)"/> <wire from="(660,140)" to="(660,180)"/> <wire from="(660,220)" to="(660,260)"/> <wire from="(180,190)" to="(180,420)"/> <wire from="(220,150)" to="(220,380)"/> <wire from="(100,60)" to="(250,60)"/> <wire from="(100,120)" to="(250,120)"/> <wire from="(570,180)" to="(660,180)"/> <wire from="(570,220)" to="(660,220)"/> <wire from="(570,240)" to="(640,240)"/> <wire from="(300,380)" to="(380,380)"/> <wire from="(650,110)" to="(650,170)"/> <wire from="(650,230)" to="(650,290)"/> <wire from="(570,170)" to="(650,170)"/> <wire from="(570,230)" to="(650,230)"/> <wire from="(640,320)" to="(720,320)"/> <wire from="(270,110)" to="(400,110)"/> <wire from="(100,150)" to="(220,150)"/> <wire from="(660,140)" to="(720,140)"/> <wire from="(660,260)" to="(720,260)"/> <wire from="(250,60)" to="(250,80)"/> <wire from="(250,100)" to="(250,120)"/> <wire from="(430,400)" to="(720,400)"/> <wire from="(450,160)" to="(450,190)"/> <wire from="(640,240)" to="(640,320)"/> <wire from="(430,460)" to="(530,460)"/> <wire from="(300,420)" to="(340,420)"/> <wire from="(340,440)" to="(380,440)"/> <wire from="(340,420)" to="(380,420)"/> <wire from="(570,200)" to="(720,200)"/> <wire from="(220,480)" to="(380,480)"/> <wire from="(180,420)" to="(270,420)"/> <wire from="(220,380)" to="(220,480)"/> <wire from="(100,90)" to="(250,90)"/> <wire from="(650,290)" to="(720,290)"/> <wire from="(450,160)" to="(460,160)"/> <wire from="(180,190)" to="(450,190)"/> <wire from="(100,190)" to="(180,190)"/> <wire from="(650,110)" to="(720,110)"/> <wire from="(400,110)" to="(400,170)"/> <comp lib="0" loc="(720,230)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="I/O Port 4"/> <a name="labelloc" val="east"/> </comp> <comp lib="1" loc="(300,380)" name="NOT Gate"/> <comp lib="0" loc="(100,60)" name="Pin"> <a name="tristate" val="false"/> <a name="label" val="A5"/> </comp> <comp loc="(490,160)" name="SN74HC138N Active low 3-8 decoder"/> <comp lib="0" loc="(720,400)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="RAM_EN"/> <a name="labelloc" val="east"/> </comp> <comp lib="0" loc="(100,120)" name="Pin"> <a name="tristate" val="false"/> <a name="label" val="A7"/> </comp> <comp lib="0" loc="(720,290)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="I/O Port 6"/> <a name="labelloc" val="east"/> </comp> <comp lib="0" loc="(100,90)" name="Pin"> <a name="tristate" val="false"/> <a name="label" val="A6"/> </comp> <comp lib="1" loc="(430,460)" name="OR Gate"> <a name="inputs" val="2"/> </comp> <comp lib="0" loc="(270,110)" name="Splitter"> <a name="facing" val="west"/> <a name="fanout" val="3"/> <a name="incoming" val="3"/> <a name="appear" val="right"/> </comp> <comp lib="0" loc="(100,190)" name="Pin"> <a name="tristate" val="false"/> <a name="label" val="IORQ"/> </comp> <comp lib="0" loc="(720,200)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="I/O Port 3"/> <a name="labelloc" val="east"/> </comp> <comp lib="0" loc="(720,140)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="I/O Port 1"/> <a name="labelloc" val="east"/> </comp> <comp lib="0" loc="(100,150)" name="Pin"> <a name="tristate" val="false"/> <a name="label" val="A15"/> </comp> <comp lib="0" loc="(720,110)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="I/O Port 0"/> <a name="labelloc" val="east"/> </comp> <comp lib="0" loc="(720,260)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="I/O Port 5"/> <a name="labelloc" val="east"/> </comp> <comp lib="1" loc="(430,400)" name="OR Gate"> <a name="inputs" val="2"/> </comp> <comp lib="0" loc="(720,320)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="I/O Port 7"/> <a name="labelloc" val="east"/> </comp> <comp lib="0" loc="(550,160)" name="Splitter"> <a name="fanout" val="8"/> <a name="incoming" val="8"/> <a name="appear" val="right"/> </comp> <comp lib="1" loc="(300,420)" name="NOT Gate"/> <comp lib="0" loc="(720,170)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="I/O Port 2"/> <a name="labelloc" val="east"/> </comp> <comp lib="0" loc="(720,430)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="label" val="ROM_EN"/> <a name="labelloc" val="east"/> </comp> </circuit> <circuit name="SN74HC138N Active low 3-8 decoder"> <a name="circuit" val="SN74HC138N Active low 3-8 decoder"/> <a name="clabel" val=""/> <a name="clabelup" val="east"/> <a name="clabelfont" val="SansSerif plain 12"/> <wire from="(320,250)" to="(380,250)"/> <wire from="(580,180)" to="(580,190)"/> <wire from="(650,250)" to="(700,250)"/> <wire from="(450,200)" to="(630,200)"/> <wire from="(590,180)" to="(630,180)"/> <wire from="(590,220)" to="(630,220)"/> <wire from="(400,180)" to="(400,200)"/> <wire from="(600,140)" to="(600,170)"/> <wire from="(380,290)" to="(420,290)"/> <wire from="(320,210)" to="(410,210)"/> <wire from="(390,270)" to="(420,270)"/> <wire from="(80,320)" to="(300,320)"/> <wire from="(610,240)" to="(630,240)"/> <wire from="(400,250)" to="(420,250)"/> <wire from="(450,270)" to="(600,270)"/> <wire from="(380,140)" to="(380,180)"/> <wire from="(410,230)" to="(420,230)"/> <wire from="(80,260)" to="(160,260)"/> <wire from="(450,160)" to="(590,160)"/> <wire from="(320,200)" to="(400,200)"/> <wire from="(300,260)" to="(300,320)"/> <wire from="(450,230)" to="(580,230)"/> <wire from="(320,190)" to="(390,190)"/> <wire from="(320,180)" to="(380,180)"/> <wire from="(580,210)" to="(630,210)"/> <wire from="(580,190)" to="(630,190)"/> <wire from="(410,200)" to="(410,210)"/> <wire from="(410,220)" to="(410,230)"/> <wire from="(400,230)" to="(400,250)"/> <wire from="(590,220)" to="(590,250)"/> <wire from="(390,240)" to="(390,270)"/> <wire from="(390,160)" to="(390,190)"/> <wire from="(580,210)" to="(580,230)"/> <wire from="(590,160)" to="(590,180)"/> <wire from="(380,140)" to="(420,140)"/> <wire from="(190,260)" to="(290,260)"/> <wire from="(600,230)" to="(600,270)"/> <wire from="(320,220)" to="(410,220)"/> <wire from="(450,290)" to="(610,290)"/> <wire from="(390,160)" to="(420,160)"/> <wire from="(400,180)" to="(420,180)"/> <wire from="(600,170)" to="(630,170)"/> <wire from="(600,230)" to="(630,230)"/> <wire from="(450,140)" to="(600,140)"/> <wire from="(380,250)" to="(380,290)"/> <wire from="(410,200)" to="(420,200)"/> <wire from="(450,250)" to="(590,250)"/> <wire from="(320,230)" to="(400,230)"/> <wire from="(450,180)" to="(580,180)"/> <wire from="(610,240)" to="(610,290)"/> <wire from="(320,240)" to="(390,240)"/> <comp lib="2" loc="(300,260)" name="Decoder"> <a name="select" val="3"/> <a name="disabled" val="0"/> </comp> <comp lib="1" loc="(450,250)" name="NOT Gate"/> <comp lib="0" loc="(700,250)" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> <a name="width" val="8"/> <a name="labelloc" val="east"/> </comp> <comp lib="1" loc="(450,140)" name="NOT Gate"/> <comp lib="0" loc="(650,250)" name="Splitter"> <a name="facing" val="west"/> <a name="fanout" val="8"/> <a name="incoming" val="8"/> <a name="appear" val="right"/> </comp> <comp lib="1" loc="(450,270)" name="NOT Gate"/> <comp lib="1" loc="(450,180)" name="NOT Gate"/> <comp lib="0" loc="(80,260)" name="Pin"> <a name="tristate" val="false"/> <a name="label" val="Enable"/> </comp> <comp lib="6" loc="(174,292)" name="Text"> <a name="text" val="Enable is active-low"/> </comp> <comp lib="1" loc="(190,260)" name="NOT Gate"/> <comp lib="1" loc="(450,290)" name="NOT Gate"/> <comp lib="0" loc="(80,320)" name="Pin"> <a name="width" val="3"/> <a name="tristate" val="false"/> <a name="label" val="Input"/> </comp> <comp lib="1" loc="(450,230)" name="NOT Gate"/> <comp lib="1" loc="(450,160)" name="NOT Gate"/> <comp lib="1" loc="(450,200)" name="NOT Gate"/> </circuit> </project>