logisim-stuff/factor machine (8 & 6 only now, more soon!).circ
2015-01-04 15:24:53 -06:00

303 lines
10 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="32"/>
</tool>
<tool name="Clock">
<a name="facing" val="north"/>
</tool>
<tool name="Constant">
<a name="width" val="32"/>
<a name="value" val="0x2"/>
</tool>
</lib>
<lib desc="#Gates" name="1"/>
<lib desc="#Plexers" name="2">
<tool name="Multiplexer">
<a name="width" val="24"/>
</tool>
</lib>
<lib desc="#Arithmetic" name="3"/>
<lib desc="#Memory" name="4">
<tool name="Counter">
<a name="width" val="24"/>
<a name="max" val="0xffffff"/>
</tool>
<tool name="RAM">
<a name="addrWidth" val="24"/>
</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="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"/>
<a name="label" val="in"/>
</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">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</tool>
<tool lib="1" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="32"/>
</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="(440,790)" to="(440,820)"/>
<wire from="(520,800)" to="(520,860)"/>
<wire from="(360,590)" to="(370,590)"/>
<wire from="(280,910)" to="(280,960)"/>
<wire from="(520,640)" to="(520,680)"/>
<wire from="(320,730)" to="(330,730)"/>
<wire from="(310,600)" to="(320,600)"/>
<wire from="(350,780)" to="(370,780)"/>
<wire from="(840,500)" to="(840,710)"/>
<wire from="(240,540)" to="(240,590)"/>
<wire from="(360,590)" to="(360,600)"/>
<wire from="(150,550)" to="(330,550)"/>
<wire from="(130,540)" to="(130,680)"/>
<wire from="(150,620)" to="(310,620)"/>
<wire from="(830,710)" to="(830,870)"/>
<wire from="(450,920)" to="(450,960)"/>
<wire from="(470,570)" to="(470,640)"/>
<wire from="(280,630)" to="(280,650)"/>
<wire from="(360,680)" to="(450,680)"/>
<wire from="(410,800)" to="(420,800)"/>
<wire from="(520,610)" to="(520,640)"/>
<wire from="(280,690)" to="(280,910)"/>
<wire from="(470,570)" to="(490,570)"/>
<wire from="(280,680)" to="(280,690)"/>
<wire from="(440,820)" to="(480,820)"/>
<wire from="(330,550)" to="(330,590)"/>
<wire from="(530,710)" to="(530,740)"/>
<wire from="(350,710)" to="(360,710)"/>
<wire from="(280,910)" to="(340,910)"/>
<wire from="(170,580)" to="(320,580)"/>
<wire from="(380,700)" to="(420,700)"/>
<wire from="(480,820)" to="(480,900)"/>
<wire from="(610,680)" to="(610,720)"/>
<wire from="(810,870)" to="(830,870)"/>
<wire from="(420,700)" to="(420,800)"/>
<wire from="(210,480)" to="(240,480)"/>
<wire from="(170,580)" to="(170,630)"/>
<wire from="(580,610)" to="(580,640)"/>
<wire from="(240,480)" to="(240,540)"/>
<wire from="(360,720)" to="(380,720)"/>
<wire from="(390,840)" to="(620,840)"/>
<wire from="(380,720)" to="(380,750)"/>
<wire from="(360,790)" to="(370,790)"/>
<wire from="(280,680)" to="(290,680)"/>
<wire from="(410,640)" to="(410,770)"/>
<wire from="(240,590)" to="(270,590)"/>
<wire from="(620,670)" to="(620,840)"/>
<wire from="(470,900)" to="(480,900)"/>
<wire from="(350,750)" to="(380,750)"/>
<wire from="(370,500)" to="(840,500)"/>
<wire from="(510,670)" to="(620,670)"/>
<wire from="(530,710)" to="(580,710)"/>
<wire from="(320,580)" to="(320,600)"/>
<wire from="(570,640)" to="(580,640)"/>
<wire from="(450,680)" to="(450,740)"/>
<wire from="(630,570)" to="(790,570)"/>
<wire from="(520,780)" to="(520,800)"/>
<wire from="(520,640)" to="(540,640)"/>
<wire from="(360,600)" to="(360,680)"/>
<wire from="(550,690)" to="(550,800)"/>
<wire from="(310,660)" to="(310,670)"/>
<wire from="(440,790)" to="(460,790)"/>
<wire from="(500,780)" to="(520,780)"/>
<wire from="(280,670)" to="(280,680)"/>
<wire from="(130,540)" to="(240,540)"/>
<wire from="(450,740)" to="(530,740)"/>
<wire from="(400,580)" to="(420,580)"/>
<wire from="(500,690)" to="(550,690)"/>
<wire from="(310,620)" to="(310,660)"/>
<wire from="(410,640)" to="(470,640)"/>
<wire from="(360,790)" to="(360,890)"/>
<wire from="(350,750)" to="(350,780)"/>
<wire from="(380,620)" to="(490,620)"/>
<wire from="(360,710)" to="(360,720)"/>
<wire from="(450,570)" to="(470,570)"/>
<wire from="(450,680)" to="(480,680)"/>
<wire from="(490,590)" to="(490,620)"/>
<wire from="(790,570)" to="(790,870)"/>
<wire from="(550,800)" to="(570,800)"/>
<wire from="(130,680)" to="(230,680)"/>
<wire from="(520,800)" to="(550,800)"/>
<wire from="(810,710)" to="(830,710)"/>
<wire from="(170,630)" to="(280,630)"/>
<wire from="(380,620)" to="(380,700)"/>
<wire from="(320,730)" to="(320,860)"/>
<wire from="(280,960)" to="(450,960)"/>
<wire from="(150,550)" to="(150,620)"/>
<wire from="(320,860)" to="(520,860)"/>
<wire from="(370,500)" to="(370,570)"/>
<wire from="(410,770)" to="(460,770)"/>
<wire from="(320,610)" to="(320,730)"/>
<wire from="(390,820)" to="(390,840)"/>
<wire from="(270,690)" to="(280,690)"/>
<wire from="(570,730)" to="(570,800)"/>
<wire from="(520,680)" to="(610,680)"/>
<comp lib="0" loc="(330,880)" name="Constant">
<a name="width" val="32"/>
<a name="value" val="0x3"/>
</comp>
<comp lib="0" loc="(490,690)" name="Clock">
<a name="facing" val="north"/>
</comp>
<comp lib="1" loc="(570,640)" name="NOT Gate"/>
<comp lib="2" loc="(310,660)" name="Multiplexer">
<a name="disabled" val="0"/>
<a name="enable" val="false"/>
</comp>
<comp lib="3" loc="(310,600)" name="Comparator">
<a name="width" val="32"/>
</comp>
<comp lib="2" loc="(410,800)" name="Multiplexer">
<a name="select" val="2"/>
<a name="width" val="32"/>
<a name="disabled" val="0"/>
<a name="enable" val="false"/>
</comp>
<comp lib="4" loc="(620,370)" name="RAM">
<a name="addrWidth" val="24"/>
<a name="dataWidth" val="32"/>
</comp>
<comp lib="0" loc="(440,910)" name="Constant">
<a name="width" val="24"/>
<a name="value" val="0x3"/>
</comp>
<comp lib="0" loc="(370,800)" name="Constant">
<a name="width" val="32"/>
<a name="value" val="0x2"/>
</comp>
<comp lib="4" loc="(450,570)" name="Counter">
<a name="width" val="24"/>
<a name="max" val="0xffffff"/>
</comp>
<comp lib="1" loc="(610,720)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
<comp lib="1" loc="(400,580)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="2" loc="(360,890)" name="Multiplexer">
<a name="width" val="32"/>
</comp>
<comp lib="3" loc="(270,690)" name="Comparator">
<a name="width" val="32"/>
</comp>
<comp lib="4" loc="(510,670)" name="Counter">
<a name="width" val="2"/>
<a name="max" val="0x3"/>
<a name="ongoal" val="stay"/>
</comp>
<comp lib="0" loc="(790,870)" name="Splitter">
<a name="fanout" val="32"/>
<a name="incoming" val="32"/>
</comp>
<comp lib="4" loc="(630,570)" name="RAM">
<a name="addrWidth" val="24"/>
<a name="dataWidth" val="32"/>
<a name="bus" val="separate"/>
</comp>
<comp lib="0" loc="(560,610)" name="Clock">
<a name="facing" val="north"/>
</comp>
<comp lib="3" loc="(500,780)" name="Comparator">
<a name="width" val="24"/>
</comp>
<comp lib="1" loc="(840,710)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="32"/>
</comp>
<comp lib="2" loc="(470,900)" name="Multiplexer">
<a name="width" val="24"/>
<a name="enable" val="false"/>
</comp>
<comp lib="0" loc="(430,590)" name="Clock">
<a name="facing" val="north"/>
</comp>
<comp lib="0" loc="(550,410)" name="Clock">
<a name="facing" val="north"/>
</comp>
<comp lib="0" loc="(230,700)" name="Constant">
<a name="width" val="32"/>
<a name="value" val="0x8"/>
</comp>
<comp lib="0" loc="(350,710)" name="Constant">
<a name="width" val="32"/>
<a name="value" val="0x2"/>
</comp>
<comp lib="0" loc="(270,610)" name="Constant">
<a name="width" val="32"/>
<a name="value" val="0x6"/>
</comp>
<comp lib="0" loc="(440,890)" name="Constant">
<a name="width" val="24"/>
<a name="value" val="0x2"/>
</comp>
<comp lib="0" loc="(210,480)" name="Pin">
<a name="width" val="32"/>
<a name="tristate" val="false"/>
<a name="label" val="in"/>
</comp>
<comp lib="0" loc="(330,900)" name="Constant">
<a name="width" val="32"/>
<a name="value" val="0x2"/>
</comp>
<comp lib="1" loc="(360,600)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
<comp lib="1" loc="(530,780)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
</circuit>
</project>