1 // license:BSD-3-Clause 2 // copyright-holders:Ryan Holtz 3 4 // 5 // Netlist for Tank Battalion 6 // 7 // Derived from the schematics in the manual. 8 // 9 // Known problems/issues: 10 // 11 // * None. 12 // 13 14 #include "netlist/devices/net_lib.h" 15 16 // 17 // Main netlist 18 // 19 20 NETLIST_START(tankbatt) 21 22 SOLVER(Solver, 48000) 23 ANALOG_INPUT(V5, 5) 24 ALIAS(VCC, V5) 25 26 CLOCK(2V, 4000) // 18.432MHz / (3 * 384 * 2) 27 CLOCK(4V, 2000) // 18.432MHz / (3 * 384 * 4) 28 29 TTL_INPUT(S1, 0) // active high 30 TTL_INPUT(S2, 0) // active high 31 TTL_INPUT(OFF, 1) // active high 32 TTL_INPUT(ENGINE_HI, 0) // active high 33 TTL_INPUT(SHOOT, 0) // active high 34 TTL_INPUT(HIT, 0) // active high 35 36 RES(R31, 470) 37 RES(R32, 470) 38 RES(R35, RES_K(4.7)) 39 RES(R36, RES_K(4.7)) 40 RES(R37, RES_K(6.8)) 41 RES(R38, RES_K(10)) 42 //RES(R41, RES_K(22)) 43 RES(R42, RES_K(22)) 44 RES(R43, RES_K(22)) 45 RES(R44, RES_K(33)) 46 RES(R45, RES_K(47)) 47 RES(R46, RES_K(4.7)) // Possible schematic or scan-quality error: Schematic says 47K 48 RES(R47, RES_K(4.7)) 49 RES(R48, RES_K(4.7)) 50 RES(R49, RES_K(4.7)) // Possible schematic or scan-quality error: Schematic says 47K 51 RES(R50, RES_K(150)) 52 RES(R51, RES_K(150)) 53 RES(R52, RES_K(220)) 54 RES(R53, RES_K(470)) 55 RES(R54, RES_K(470)) 56 RES(R56_1, RES_K(1)) 57 RES(R56_2, RES_K(1)) 58 RES(R57, RES_K(10)) 59 RES(R58, RES_K(1)) 60 RES(R59, RES_K(1)) 61 RES(R60, RES_K(1)) 62 RES(R61, RES_K(1)) 63 64 CAP(C10, CAP_U(2.2)) 65 CAP(C11, CAP_U(2.2)) 66 CAP(C12, CAP_U(2.2)) 67 CAP(C13, CAP_U(2.2)) 68 CAP(C14, CAP_U(0.1)) 69 CAP(C15, CAP_U(0.01)) 70 CAP(C16, CAP_U(0.01)) 71 CAP(C17, CAP_U(0.01)) 72 CAP(C18, CAP_U(0.01)) 73 CAP(C42, CAP_U(0.1)) 74 75 DIODE(D8, "D") // Generic diodes, types not listed on schematic 76 DIODE(D9, "D") 77 DIODE(D10, "D") 78 DIODE(D11, "D") 79 80 CD4006(_6F) 81 CD4066_DIP(_6L) 82 LM324_DIP(_6J) 83 TTL_7486_DIP(_6K) 84 TTL_7492_DIP(_5K) 85 86 NET_C(VCC, _5K.5, _6F.VDD, _6J.4, _6K.7, _6L.14, S1.VCC, S2.VCC, OFF.VCC, ENGINE_HI.VCC, SHOOT.VCC, HIT.VCC, 2V.VCC, 4V.VCC) 87 NET_C(GND, _5K.10, _6F.VSS, _6J.11, _6K.14, _6L.7, S1.GND, S2.GND, OFF.GND, ENGINE_HI.GND, SHOOT.GND, HIT.GND, 2V.GND, 4V.GND) 88 89 // Noise generation (presumably) 90 NET_C(_6F.CLOCK, 2V) 91 NET_C(_6F.D1P4, _6F.D3) 92 NET_C(_6F.D3P4, _6F.D4, _6L.12, _6L.6) 93 NET_C(_6F.D1, _6F.D2P5, _6K.A.A) 94 NET_C(_6F.D4P4, _6K.A.B) 95 NET_C(_6K.A.Q, R38.1) 96 NET_C(_6F.D2, R38.2, D9.K) 97 NET_C(_6F.D4P5, D8.A, R53.1) 98 NET_C(D8.K, R53.2, C42.1, _6J.2) 99 NET_C(_6J.1, C42.2, D9.A) 100 NET_C(_6J.3, C12.1, R43.1, R44.1, _6J.12, _6J.10) 101 NET_C(C12.2, GND) 102 NET_C(R43.2, GND) 103 NET_C(R44.2, V5) 104 105 // S1 106 NET_C(S1.Q, _6L.5) 107 NET_C(4V, _6L.4) 108 NET_C(_6L.3, R35.1) 109 110 // S2 111 NET_C(S2.Q, _6L.13) 112 NET_C(2V, _6L.1) 113 NET_C(_6L.2, R36.1) 114 115 // Hit 116 NET_C(HIT.Q, R31.1) 117 NET_C(R31.2, D10.A) 118 NET_C(D10.K, C10.1, _6L.8) 119 NET_C(C10.2, GND) 120 NET_C(_6L.9, R50.1) 121 NET_C(R50.2, R42.1, C15.1, C16.1) 122 NET_C(R42.2, GND) 123 NET_C(C16.2, R54.1, _6J.9) 124 NET_C(C15.2, R54.2, _6J.8, R56_1.1) 125 126 // Shoot 127 NET_C(SHOOT.Q, R32.1) 128 NET_C(R32.2, D11.A) 129 NET_C(D11.K, C11.1, _6L.11) 130 NET_C(C11.2, GND) 131 NET_C(_6L.10, R45.1) 132 NET_C(R45.2, R37.1, C17.1, C18.1) 133 NET_C(R37.2, GND) 134 NET_C(C18.2, R51.1, _6J.13) 135 NET_C(C17.2, R51.2, _6J.14, R56_2.1) 136 137 // Engine Rumble 138 NET_C(ENGINE_HI.Q, _6K.B.A) 139 NET_C(_6K.B.B, _6K.C.Q) 140 NET_C(_6K.B.Q, R52.1, _5K.1) 141 NET_C(R52.2, R46.1, _6J.6, C14.1) 142 NET_C(C14.2, GND) 143 NET_C(_6J.5, R47.1, R48.1, R49.1) 144 NET_C(R47.2, V5) 145 NET_C(R48.2, GND) 146 NET_C(R49.2, R57.1, _6J.7, R46.2, _6K.C.A) 147 NET_C(R57.2, GND) 148 NET_C(_6K.C.B, VCC) 149 NET_C(_5K.7, VCC) 150 NET_C(_5K.6, OFF.Q) 151 NET_C(_5K.11, R60.1, _6K.D.A) 152 NET_C(_5K.8, R58.1, _6K.D.B) 153 NET_C(_6K.D.Q, _5K.14) 154 NET_C(_5K.12, R61.1) 155 NET_C(R58.2, R60.2, R61.2, C13.1, R59.1) 156 NET_C(C13.2, GND) 157 158 // Mixing 159 //NET_C(R56_1.2, R56_2.2) 160 //NET_C(R35.2, R36.2) 161 //NET_C(R56_2.2, R59.2) 162 NET_C(R35.2, R36.2, R56_1.2, R56_2.2, R59.2) 163 //NET_C(R41.2, GND) 164 NETLIST_END() 165