logisim-stuff/auto text editor.circ
2015-01-04 15:24:53 -06:00

510 lines
18 KiB
XML

<?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="fanout" val="7"/>
<a name="incoming" val="7"/>
<a name="appear" val="right"/>
</tool>
<tool name="Pin">
<a name="tristate" val="false"/>
<a name="pull" val="down"/>
<a name="label" val="Reset"/>
</tool>
<tool name="Probe">
<a name="facing" val="west"/>
<a name="radix" val="16"/>
</tool>
<tool name="Tunnel">
<a name="label" val="JMP"/>
</tool>
<tool name="Pull Resistor">
<a name="facing" val="north"/>
</tool>
<tool name="Clock">
<a name="facing" val="north"/>
</tool>
<tool name="Constant">
<a name="value" val="0x0"/>
</tool>
</lib>
<lib desc="#Gates" name="1"/>
<lib desc="#Plexers" name="2">
<tool name="Multiplexer">
<a name="select" val="2"/>
<a name="width" val="32"/>
</tool>
<tool name="Demultiplexer">
<a name="select" val="2"/>
<a name="width" val="4"/>
</tool>
</lib>
<lib desc="#Arithmetic" name="3"/>
<lib desc="#Memory" name="4">
<tool name="Register">
<a name="width" val="1"/>
</tool>
<tool name="Counter">
<a name="width" val="5"/>
<a name="max" val="0x1f"/>
</tool>
<tool name="RAM">
<a name="addrWidth" val="24"/>
<a name="dataWidth" val="4"/>
<a name="bus" val="asynch"/>
</tool>
<tool name="ROM">
<a name="contents">addr/data: 8 8
0
</a>
</tool>
</lib>
<lib desc="#I/O" name="5">
<tool name="DotMatrix">
<a name="inputtype" val="row"/>
<a name="matrixcols" val="32"/>
<a name="matrixrows" val="32"/>
</tool>
</lib>
<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="Ctrl Button1" name="Menu Tool"/>
<tool lib="6" map="Button3" 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">
<a name="size" val="20"/>
</tool>
<tool lib="1" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</tool>
<tool lib="1" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</tool>
</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="(660,620)" to="(670,620)"/>
<wire from="(170,310)" to="(260,310)"/>
<wire from="(620,590)" to="(640,590)"/>
<wire from="(280,100)" to="(280,350)"/>
<wire from="(190,360)" to="(290,360)"/>
<wire from="(180,380)" to="(230,380)"/>
<wire from="(620,350)" to="(620,590)"/>
<wire from="(240,380)" to="(240,390)"/>
<wire from="(230,370)" to="(290,370)"/>
<wire from="(320,350)" to="(620,350)"/>
<wire from="(320,340)" to="(390,340)"/>
<wire from="(80,210)" to="(90,210)"/>
<wire from="(260,310)" to="(260,330)"/>
<wire from="(260,330)" to="(290,330)"/>
<wire from="(170,350)" to="(180,350)"/>
<wire from="(670,620)" to="(670,800)"/>
<wire from="(630,600)" to="(640,600)"/>
<wire from="(230,220)" to="(230,340)"/>
<wire from="(170,330)" to="(190,330)"/>
<wire from="(320,360)" to="(630,360)"/>
<wire from="(220,390)" to="(240,390)"/>
<wire from="(240,380)" to="(290,380)"/>
<wire from="(190,330)" to="(190,360)"/>
<wire from="(110,100)" to="(280,100)"/>
<wire from="(660,610)" to="(660,620)"/>
<wire from="(180,350)" to="(180,380)"/>
<wire from="(80,490)" to="(390,490)"/>
<wire from="(390,340)" to="(390,490)"/>
<wire from="(220,220)" to="(220,390)"/>
<wire from="(560,800)" to="(670,800)"/>
<wire from="(230,340)" to="(290,340)"/>
<wire from="(280,350)" to="(290,350)"/>
<wire from="(230,370)" to="(230,380)"/>
<wire from="(80,210)" to="(80,490)"/>
<wire from="(630,360)" to="(630,600)"/>
<comp lib="5" loc="(90,210)" name="Keyboard"/>
<comp lib="5" loc="(170,310)" name="Button">
<a name="label" val="jmp"/>
<a name="labelloc" val="west"/>
</comp>
<comp lib="0" loc="(110,100)" name="Pin">
<a name="width" val="24"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(170,350)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="load chars"/>
</comp>
<comp loc="(320,340)" name="457984578"/>
<comp lib="5" loc="(170,330)" name="Button">
<a name="label" val="res"/>
<a name="labelloc" val="west"/>
</comp>
<comp lib="5" loc="(640,600)" name="TTY">
<a name="cols" val="40"/>
</comp>
<comp lib="5" loc="(560,800)" name="Button"/>
</circuit>
<circuit name="457984578">
<a name="circuit" val="457984578"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(380,600)" to="(390,600)"/>
<wire from="(290,160)" to="(400,160)"/>
<wire from="(780,250)" to="(880,250)"/>
<wire from="(330,400)" to="(650,400)"/>
<wire from="(330,280)" to="(330,400)"/>
<wire from="(560,390)" to="(560,560)"/>
<wire from="(360,70)" to="(570,70)"/>
<wire from="(290,160)" to="(290,520)"/>
<wire from="(170,760)" to="(170,790)"/>
<wire from="(450,150)" to="(450,160)"/>
<wire from="(380,360)" to="(380,600)"/>
<wire from="(750,170)" to="(750,180)"/>
<wire from="(110,190)" to="(110,350)"/>
<wire from="(430,210)" to="(430,220)"/>
<wire from="(170,790)" to="(170,800)"/>
<wire from="(570,340)" to="(600,340)"/>
<wire from="(420,380)" to="(420,590)"/>
<wire from="(540,100)" to="(540,220)"/>
<wire from="(950,710)" to="(960,710)"/>
<wire from="(100,830)" to="(100,870)"/>
<wire from="(370,280)" to="(370,580)"/>
<wire from="(430,180)" to="(430,190)"/>
<wire from="(420,340)" to="(420,370)"/>
<wire from="(560,340)" to="(560,370)"/>
<wire from="(420,370)" to="(430,370)"/>
<wire from="(450,150)" to="(460,150)"/>
<wire from="(540,290)" to="(640,290)"/>
<wire from="(600,160)" to="(690,160)"/>
<wire from="(200,780)" to="(340,780)"/>
<wire from="(640,290)" to="(640,320)"/>
<wire from="(490,290)" to="(510,290)"/>
<wire from="(370,220)" to="(370,230)"/>
<wire from="(290,520)" to="(680,520)"/>
<wire from="(950,210)" to="(950,220)"/>
<wire from="(400,240)" to="(470,240)"/>
<wire from="(680,520)" to="(680,870)"/>
<wire from="(210,330)" to="(220,330)"/>
<wire from="(730,370)" to="(740,370)"/>
<wire from="(440,250)" to="(440,260)"/>
<wire from="(180,810)" to="(180,830)"/>
<wire from="(340,780)" to="(340,800)"/>
<wire from="(480,270)" to="(480,300)"/>
<wire from="(470,50)" to="(470,240)"/>
<wire from="(230,40)" to="(230,100)"/>
<wire from="(560,720)" to="(1180,720)"/>
<wire from="(400,160)" to="(400,230)"/>
<wire from="(430,220)" to="(430,230)"/>
<wire from="(50,560)" to="(560,560)"/>
<wire from="(850,330)" to="(850,590)"/>
<wire from="(340,800)" to="(340,830)"/>
<wire from="(730,120)" to="(750,120)"/>
<wire from="(720,190)" to="(720,200)"/>
<wire from="(630,260)" to="(630,370)"/>
<wire from="(280,130)" to="(490,130)"/>
<wire from="(680,210)" to="(680,270)"/>
<wire from="(680,370)" to="(700,370)"/>
<wire from="(120,40)" to="(120,190)"/>
<wire from="(810,350)" to="(810,400)"/>
<wire from="(340,340)" to="(340,780)"/>
<wire from="(330,830)" to="(340,830)"/>
<wire from="(340,310)" to="(340,340)"/>
<wire from="(740,140)" to="(740,190)"/>
<wire from="(100,870)" to="(680,870)"/>
<wire from="(600,380)" to="(800,380)"/>
<wire from="(130,830)" to="(140,830)"/>
<wire from="(480,300)" to="(510,300)"/>
<wire from="(680,460)" to="(680,520)"/>
<wire from="(790,320)" to="(800,320)"/>
<wire from="(430,300)" to="(470,300)"/>
<wire from="(740,140)" to="(750,140)"/>
<wire from="(390,420)" to="(720,420)"/>
<wire from="(550,340)" to="(560,340)"/>
<wire from="(340,340)" to="(380,340)"/>
<wire from="(780,180)" to="(780,250)"/>
<wire from="(520,390)" to="(560,390)"/>
<wire from="(370,180)" to="(370,190)"/>
<wire from="(680,210)" to="(690,210)"/>
<wire from="(750,180)" to="(780,180)"/>
<wire from="(300,270)" to="(300,380)"/>
<wire from="(460,180)" to="(690,180)"/>
<wire from="(370,580)" to="(390,580)"/>
<wire from="(130,840)" to="(320,840)"/>
<wire from="(270,760)" to="(270,830)"/>
<wire from="(870,700)" to="(950,700)"/>
<wire from="(370,210)" to="(370,220)"/>
<wire from="(390,330)" to="(410,330)"/>
<wire from="(720,420)" to="(870,420)"/>
<wire from="(640,320)" to="(650,320)"/>
<wire from="(850,590)" to="(920,590)"/>
<wire from="(50,160)" to="(50,560)"/>
<wire from="(800,340)" to="(800,380)"/>
<wire from="(170,660)" to="(740,660)"/>
<wire from="(200,800)" to="(340,800)"/>
<wire from="(300,270)" to="(380,270)"/>
<wire from="(430,380)" to="(490,380)"/>
<wire from="(510,260)" to="(630,260)"/>
<wire from="(420,280)" to="(440,280)"/>
<wire from="(430,370)" to="(430,380)"/>
<wire from="(260,340)" to="(260,430)"/>
<wire from="(390,330)" to="(390,420)"/>
<wire from="(720,360)" to="(720,420)"/>
<wire from="(720,190)" to="(740,190)"/>
<wire from="(680,370)" to="(680,400)"/>
<wire from="(1180,220)" to="(1180,720)"/>
<wire from="(520,370)" to="(560,370)"/>
<wire from="(800,270)" to="(800,320)"/>
<wire from="(100,160)" to="(100,240)"/>
<wire from="(190,800)" to="(200,800)"/>
<wire from="(490,130)" to="(490,290)"/>
<wire from="(390,120)" to="(680,120)"/>
<wire from="(110,190)" to="(120,190)"/>
<wire from="(190,260)" to="(190,460)"/>
<wire from="(470,280)" to="(470,300)"/>
<wire from="(390,120)" to="(390,170)"/>
<wire from="(680,190)" to="(690,190)"/>
<wire from="(220,250)" to="(440,250)"/>
<wire from="(680,270)" to="(800,270)"/>
<wire from="(430,200)" to="(430,210)"/>
<wire from="(560,560)" to="(560,720)"/>
<wire from="(460,150)" to="(460,180)"/>
<wire from="(370,190)" to="(370,200)"/>
<wire from="(470,280)" to="(510,280)"/>
<wire from="(430,170)" to="(430,180)"/>
<wire from="(400,290)" to="(430,290)"/>
<wire from="(740,370)" to="(740,660)"/>
<wire from="(600,340)" to="(600,380)"/>
<wire from="(150,790)" to="(170,790)"/>
<wire from="(680,400)" to="(680,460)"/>
<wire from="(550,220)" to="(550,310)"/>
<wire from="(540,220)" to="(550,220)"/>
<wire from="(460,50)" to="(470,50)"/>
<wire from="(340,310)" to="(520,310)"/>
<wire from="(400,230)" to="(430,230)"/>
<wire from="(270,830)" to="(310,830)"/>
<wire from="(630,370)" to="(680,370)"/>
<wire from="(120,40)" to="(230,40)"/>
<wire from="(730,120)" to="(730,170)"/>
<wire from="(600,340)" to="(650,340)"/>
<wire from="(170,180)" to="(370,180)"/>
<wire from="(430,290)" to="(430,300)"/>
<wire from="(950,220)" to="(1180,220)"/>
<wire from="(470,270)" to="(480,270)"/>
<wire from="(50,160)" to="(100,160)"/>
<wire from="(160,830)" to="(180,830)"/>
<wire from="(400,240)" to="(400,290)"/>
<wire from="(870,420)" to="(870,700)"/>
<wire from="(100,830)" to="(130,830)"/>
<wire from="(680,400)" to="(810,400)"/>
<wire from="(370,230)" to="(370,240)"/>
<wire from="(950,700)" to="(950,710)"/>
<wire from="(530,310)" to="(550,310)"/>
<wire from="(920,590)" to="(920,690)"/>
<wire from="(680,360)" to="(680,370)"/>
<wire from="(380,330)" to="(390,330)"/>
<wire from="(170,760)" to="(270,760)"/>
<wire from="(300,380)" to="(420,380)"/>
<wire from="(730,170)" to="(750,170)"/>
<wire from="(500,220)" to="(540,220)"/>
<wire from="(190,460)" to="(680,460)"/>
<wire from="(370,200)" to="(370,210)"/>
<wire from="(380,330)" to="(380,340)"/>
<wire from="(420,280)" to="(420,300)"/>
<wire from="(830,330)" to="(850,330)"/>
<wire from="(100,240)" to="(190,240)"/>
<wire from="(850,90)" to="(1260,90)"/>
<wire from="(380,270)" to="(380,300)"/>
<wire from="(250,340)" to="(260,340)"/>
<wire from="(600,160)" to="(600,340)"/>
<wire from="(110,350)" to="(210,350)"/>
<wire from="(150,630)" to="(150,790)"/>
<wire from="(920,690)" to="(950,690)"/>
<wire from="(130,830)" to="(130,840)"/>
<wire from="(650,410)" to="(1260,410)"/>
<wire from="(330,280)" to="(370,280)"/>
<wire from="(170,180)" to="(170,660)"/>
<wire from="(720,170)" to="(730,170)"/>
<wire from="(150,630)" to="(210,630)"/>
<wire from="(1260,90)" to="(1260,410)"/>
<wire from="(210,430)" to="(260,430)"/>
<wire from="(570,70)" to="(570,340)"/>
<wire from="(430,190)" to="(430,200)"/>
<wire from="(210,430)" to="(210,630)"/>
<wire from="(680,120)" to="(680,190)"/>
<wire from="(200,780)" to="(200,800)"/>
<wire from="(380,300)" to="(420,300)"/>
<wire from="(650,400)" to="(650,410)"/>
<wire from="(230,100)" to="(540,100)"/>
<wire from="(740,360)" to="(740,370)"/>
<comp lib="1" loc="(430,330)" name="Controlled Buffer"/>
<comp lib="1" loc="(250,340)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
<comp lib="1" loc="(720,170)" name="AND Gate">
<a name="width" val="7"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="4" loc="(540,290)" name="Counter">
<a name="width" val="24"/>
<a name="max" val="0xffffff"/>
</comp>
<comp lib="1" loc="(470,270)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(420,590)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(450,160)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="7"/>
<a name="incoming" val="7"/>
</comp>
<comp lib="0" loc="(430,330)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="key clock out"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(720,200)" name="AND Gate">
<a name="width" val="7"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(950,210)" name="OR Gate">
<a name="inputs" val="7"/>
</comp>
<comp lib="1" loc="(200,800)" name="Controlled Inverter"/>
<comp lib="1" loc="(220,250)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(950,690)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="7"/>
<a name="label" val="ASCII out"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(330,830)" name="Controlled Buffer"/>
<comp lib="4" loc="(790,320)" name="RAM">
<a name="addrWidth" val="24"/>
<a name="dataWidth" val="7"/>
<a name="bus" val="separate"/>
</comp>
<comp lib="0" loc="(500,220)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="res in"/>
</comp>
<comp lib="2" loc="(830,330)" name="Multiplexer">
<a name="width" val="7"/>
<a name="disabled" val="0"/>
<a name="enable" val="false"/>
</comp>
<comp lib="0" loc="(880,250)" name="Splitter">
<a name="fanout" val="7"/>
<a name="incoming" val="7"/>
</comp>
<comp lib="0" loc="(550,340)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="avalible in"/>
</comp>
<comp lib="1" loc="(380,360)" name="NOT Gate">
<a name="facing" val="south"/>
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(210,330)" name="Clock"/>
<comp lib="0" loc="(390,170)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="7"/>
<a name="incoming" val="7"/>
</comp>
<comp lib="0" loc="(960,710)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="disp clock out"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(780,130)" name="OR Gate">
<a name="width" val="7"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(460,50)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="jump in"/>
</comp>
<comp lib="1" loc="(490,380)" name="AND Gate">
<a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(360,70)" name="Pin">
<a name="width" val="7"/>
<a name="tristate" val="false"/>
<a name="label" val="ASCII in "/>
</comp>
<comp lib="1" loc="(850,90)" name="OR Gate">
<a name="inputs" val="7"/>
</comp>
<comp lib="1" loc="(730,370)" name="NOT Gate"/>
<comp lib="0" loc="(510,260)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="R/W in"/>
</comp>
<comp lib="0" loc="(280,130)" name="Pin">
<a name="width" val="24"/>
<a name="tristate" val="false"/>
<a name="label" val="a in"/>
</comp>
<comp lib="0" loc="(780,130)" name="Splitter">
<a name="fanout" val="7"/>
<a name="incoming" val="7"/>
</comp>
<comp lib="1" loc="(160,830)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
</circuit>
</project>