1 // license:CC0 2 // copyright-holders: beta-tester (https://github.com/beta-tester) 3 4 //NL_CONTAINS brdrline 5 6 // 7 // Netlist for Borderline (brdrline) 8 // 9 // Derived from the schematics in the Borderline Quest Owner's Manual. 10 // 11 // Known problems/issues: 12 // 13 // * all transistors in schematics of sound genertors were drawn 14 // in a wrong orientation. 15 // base and collectors were swaped 16 // 17 // * MB4391 is missing. a fake substitution is used 18 // 19 // * it takes up to 30seconds to charge C24 to its working point 20 // in ANIMAL_SOUND 21 // 22 // * noise generation with MM5837_DIP eats a lot of CPU power 23 // 24 25 26 // --------------------------------------------------------------------------- 27 // Borderline 28 // Owner's Manual 29 // Sega/Gremlin, Manual Part No. 420-0613 30 // 31 // ........................................................................... 32 // Page 26 33 // Sound Board Assembly 34 // Drawing No. 834-0055, Rev. A, Sheet 6 of 7 35 // () = location in schematics 36 // ........................................................................... 37 // GUN_TRG (C8); GUN_SOUND (D6); (C8,D8,C7,D7,C6,D6) 38 // JEEP_ON (C8); JEEP_SOUND (C6); (C8,B8,C7,B7,C6,B6) 39 // POINT_TRG (A8); POINT_SOUND (B3); (A8,B8,A7,B7,A6,B6,A5,B5,C5,D5,A4,B4,C5, 40 // D4,B3) 41 // HIT_TRG (A8); HIT_SOUND (A4); (A8,A7,A6,A5,A4,B4,C4,D4,A3,B4,C3,D3) 42 // 43 // ........................................................................... 44 // Page 27 45 // Sound Board Assembly 46 // Drawing No. 834-0055, Rev. A, Sheet 7 of 7 47 // () = location in schematics 48 // ........................................................................... 49 // ANIMAL_TRG (D8); ANIMAL_SOUND (C6); (D8,C8,B8,A8,D7,C7,B7,A8,D6,C6,D5,C5) 50 // EMAR_TRG (A8); EMAR_SOUND (C5); (A8,A7,B7,C6,B6,B5,C5,B4,C4,D4,D3) 51 // WALK_TRG (A8); WALK_SOUND (B5); (A8,A7,A6,B6,B5) 52 // CRY_TRG (A8); CRY_SOUND (C1); (A8,A7,A6,A5,A4,A3,B3,C3,A2,B2,C2,A1, 53 // B1,C1) 54 // --------------------------------------------------------------------------- 55 56 57 // dry run: 58 // X=SOUND_OUT; ./nltool -q -c run --progress -t 50 -n brdrline -l $X -i ./src/mame/audio/nl_brdrline.csv ./src/mame/audio/nl_brdrline.cpp && ./nlwav -f tab -i 0.001 -s 1 -n -1 log_$X.log | gnuplot -p -e "reset; plot '-' using 1 with lines" 59 // X=SOUND_OUT; ./nltool -v -s -c run --progress -t 50 -n brdrline -l $X -i ./src/mame/audio/nl_brdrline.csv ./src/mame/audio/nl_brdrline.cpp | tee ./nl_brdrline.txt && ./nlwav -f tab -i 0.001 -s 1 -n -1 log_$X.log | gnuplot -p -e "reset; plot '-' using 1 with lines" 60 // 61 // X=SOUND_OUT; ./nlwav -f wav32f -a 0.5 -o ../$X.wav log_$X.log 62 63 64 #include "netlist/devices/net_lib.h" 65 66 #define ENABLE_FRONTIERS (1) 67 68 69 /* ---------------------------------------------------------------------------- 70 * Library section content START 71 * ---------------------------------------------------------------------------*/ 72 #if 0 73 // 74 // WARNING: fake implementation for MB4391 based on guesses only 75 // MB4391_DIP 76 // MB4391(A) 77 // +--------------+ 78 // .1/*IN1*/ |1 ++ 16| .16/*VCC1*/ 79 // .2/*CON1*/ |2 15| .15/*OUT1*/ 80 // .3/*GND1*/ |3 14| .14/*RO1*/ 81 // |4 MB4391 13| 82 // .5/*IN2*/ |5 12| .12/*VCC2*/ 83 // .6/*CON2*/ |6 11| .11/*OUT2*/ 84 // .7/*GND2*/ |7 10| .10/*RO2*/ 85 // |8 9| 86 // +--------------+ 87 /* 88 * VCC -----+-----------+-------------- VCC 89 * | | 90 * +-+ | 91 * |R| | 92 * |1| 2| 93 * +-+ +-------+-+ 94 * | 0| AFUNC |Q +----+ 95 * IN -----+---+ +---|Rout|--- OUT 96 * | | fx | +----+ 97 * +-+ +-+--+--+-+ 98 * |R| 1| 4| 3| 99 * |2| | | | 100 * +-+ | | | 101 * | | | | 102 * GND -----+-----|--|--+-------------- GND 103 * | | 104 * CON -----------+ | 105 * | 106 * RO --------------+ 107 * 108 */ 109 #endif 110 static NETLIST_START(_MB4391) 111 // MB4391 (fake implementation) 112 // 2020 by beta-tester (https://github.com/beta-tester) 113 // 114 // values by guesses 115 // for brdrline schematics only 116 // 117 // Vmix = -(Vcon - 4.759384) / (4.759384 - 2.839579) 118 // Vmix2 = pow(Vmix, 2) 119 // Vout = Vin * Vmix2 120 // 121 // Vcon(max) = 4.759384 122 // Vcon(min) = 2.839584...2.839579 (@3.002360417e+01)(@3.152360417e+01) 123 //AFUNC(fx, 5, "(A1)") 124 // 125 //AFUNC(fx, 5, "min(1, max(0, -(A1 - 4.759384) / (4.759384 - 2.839579)))") 126 //AFUNC(fx, 5, "min(1, max(0, -(A1 - (A2-0.24)) / ((A2-0.24) - (A2/2+0.34))))") 127 // 128 // Vin(offset)=2.5 (VCC/2) 129 //AFUNC(fx, 5, "(A0)") 130 //AFUNC(fx, 5, "(A0-2.5)") 131 //AFUNC(fx, 5, "(A0-(A2/2))") 132 // 133 // vin * mix 134 //AFUNC(fx, 5, "(A0-(A2/2)) * (min(1, max(0, -(A1 - 4.759384) / (4.759384 - 2.839579))))") 135 // 136 // vin * pow(mix, 2) 137 AFUNC(fx, 5, "(A0-(A2/2)) * pow((min(1, max(0, -(A1 - 4.759384) / (4.759384 - 2.839579))), 2))") 138 139 RES(R1, RES_K(10)) 140 RES(R2, RES_K(10)) 141 NET_C(VCC, R1.1) 142 NET_C(IN, R1.2, R2.1) 143 NET_C(R2.2, GND) 144 145 RES(Rout, RES_K(1)) 146 NET_C(fx.Q, Rout.1) // fx(IN, CON, VCC, GND, RO) = OUT 147 148 // INPUT 149 ALIAS(IN, fx.A0) // IN 150 ALIAS(CON, fx.A1) // CON 151 ALIAS(VCC, fx.A2) // VCC 152 ALIAS(GND, fx.A3) // GND 153 ALIAS(RO, fx.A4) // RO 154 155 // OUTPUT 156 ALIAS(OUT, Rout.2) // OUT 157 NETLIST_END() 158 159 160 static NETLIST_START(_MB4391_DIP) 161 SUBMODEL(_MB4391, A) 162 SUBMODEL(_MB4391, B) 163 164 NC_PIN(NC) 165 166 DIPPINS( /* +--------------+ */ 167 A.IN, /* IN1 |1 ++ 16| VCC1 */ A.VCC, 168 A.CON, /* CON1 |2 15| OUT1 */ A.OUT, 169 A.GND, /* GND1 |3 14| RO1 */ A.RO, 170 NC.I, /* |4 MB4391 13| */ NC.I, 171 B.IN, /* IN2 |5 12| VCC2 */ B.VCC, 172 B.CON, /* CON2 |6 11| OUT2 */ B.OUT, 173 B.GND, /* GND2 |7 10| RO2 */ B.RO, 174 NC.I, /* |8 9| */ NC.I 175 /* +--------------+ */ 176 ) 177 NETLIST_END() 178 /* ---------------------------------------------------------------------------- 179 * Library section content END 180 * ---------------------------------------------------------------------------*/ 181 182 183 184 185 /* 186 * hack 187 * 188 * terminates unused parts of a DIP 189 * WARNING: eats CPU time 190 * 191 * REQUIREMENT: 192 * - definition of a voltage splitter and a given alias UNUSED_OP_REF as 193 */ 194 #define UNUSED_TTL_Q(_name) HINT(_name, NC) 195 #define UNUSED_TTL_I(_name) NET_C(_name, GND) 196 #define UNUSED_OP_OUT_MINUS(_name_out, _name_minus) \ 197 NET_C(_name_out, _name_minus) 198 #define UNUSED_OP_PLUS(_name_plus) \ 199 NET_C(UNUSED_OP_REF, _name_plus) 200 201 /* 202 * hack 203 */ 204 #define NC_(_name) HINT(_name, NC) 205 #define GND_(_name) NET_C(_name, GND) 206 #define TMP_(_name) NET_C(_name, GND) 207 208 /* 209 * hack 210 */ 211 // diode MA150 (nothing special, only for quick discharging caps) 212 #define MA150(_name) \ 213 DIODE(_name, "D") 214 215 // npn transistor 2SC458 216 #define C458(_name) \ 217 QBJT_EB(_name, "NPN") 218 219 // MB4391 one half of 220 //#define MB4391(_name) NET_REGISTER_DEV_X(MB4391, _name) 221 #define MB4391(_name) \ 222 SUBMODEL(_MB4391, _name) 223 224 // MB4391 full dip 225 //#define MB4391_DIP(_name) NET_REGISTER_DEV_X(MB4391_DIP, _name) 226 #define MB4391_DIP(_name) \ 227 SUBMODEL(_MB4391_DIP, _name) 228 229 230 231 232 // --------------------------------------------------------------------------- 233 // Borderline 234 // Owner's Manual 235 // Sega/Gremlin, Manual Part No. 420-0613 236 // 237 // ........................................................................... 238 // Page 26 239 // Sound Board Assembly 240 // Drawing No. 834-0055, Rev. A, Sheet 6 of 7 241 // () = location in schematics 242 // ........................................................................... 243 // GUN_TRG (C8); GUN_SOUND (D6); (C8,D8,C7,D7,C6,D6) 244 // JEEP_ON (C8); JEEP_SOUND (C6); (C8,B8,C7,B7,C6,B6) 245 // POINT_TRG (A8); POINT_SOUND (B3); (A8,B8,A7,B7,A6,B6,A5,B5,C5,D5,A4,B4,C5, 246 // D4,B3) 247 // HIT_TRG (A8); HIT_SOUND (A4); (A8,A7,A6,A5,A4,B4,C4,D4,A3,B4,C3,D3) 248 // 249 // ........................................................................... 250 // Page 27 251 // Sound Board Assembly 252 // Drawing No. 834-0055, Rev. A, Sheet 7 of 7 253 // () = location in schematics 254 // ........................................................................... 255 // ANIMAL_TRG (D8); ANIMAL_SOUND (C6); (D8,C8,B8,A8,D7,C7,B7,A8,D6,C6,D5,C5) 256 // EMAR_TRG (A8); EMAR_SOUND (C5); (A8,A7,B7,C6,B6,B5,C5,B4,C4,D4,D3) 257 // WALK_TRG (A8); WALK_SOUND (B5); (A8,A7,A6,B6,B5) 258 // CRY_TRG (A8); CRY_SOUND (C1); (A8,A7,A6,A5,A4,A3,B3,C3,A2,B2,C2,A1, 259 // B1,C1) 260 // --------------------------------------------------------------------------- 261 static NETLIST_START(brdrline_schematics) 262 263 /* ------------------------------------------------------------------------ 264 * UNUSED_OP_REF 265 * -----------------------------------------------------------------------*/ 266 // UNUSED_OP_REF 267 POT(UNUSED_OP_RES, RES_K(20)) 268 PARAM(UNUSED_OP_RES.DIAL, 0.5) 269 NET_C(V12, UNUSED_OP_RES.1) 270 NET_C(GND, UNUSED_OP_RES.3) 271 ALIAS(UNUSED_OP_REF, UNUSED_OP_RES.2) 272 273 274 /* ------------------------------------------------------------------------ 275 * RST (RESET for sound) 276 * t(0s) = lo, t(2s) = high, t(infinite) = high 277 * -----------------------------------------------------------------------*/ 278 RES(R171, RES_K(47)) 279 CAP(C78, CAP_U(47)) 280 281 TTL_74123_DIP(IC37) // shared by GUN_SOUND, RST 282 NET_C(GND, IC37.8/*GND*/) 283 NET_C(V5, IC37.16/*VCC*/) 284 285 NET_C(GND, IC37.9/*A2*/) 286 NET_C(V5, IC37.10/*B2*/, IC37.11/*CLRQ2*/, R171.1) 287 NET_C(IC37.6/*C2*/, C78.1) 288 NET_C(IC37.7/*RC2*/, C78.2, R171.2) 289 290 // -------------------------------- 291 // UNUSED PINS 292 NC_(IC37.5/*Q2*/) 293 294 // -------------------------------- 295 // OUTPUT 296 ALIAS(RST, IC37.12/*QQ2*/) 297 298 299 /* ------------------------------------------------------------------------ 300 * GUN_SOUND 301 * -----------------------------------------------------------------------*/ 302 // INPUT 303 NET_C(GUN_TRG, R156.2) 304 305 // -------------------------------- 306 // TRG -> CON 307 MA150(D1) 308 RES(R156, RES_K(1)) 309 RES(R155, RES_K(47)) 310 RES(R89, 470) 311 RES(R90, RES_K(470)) 312 RES(R91, RES_K(470)) 313 CAP(C73, CAP_U(1)) 314 CAP(C45, CAP_U(1)) 315 NET_C(GND, C45.2) 316 NET_C(V5, IC37.2/*B1*/, IC37.3/*CLRQ1*/ 317 , R156.1, R155.1, R91.1) 318 NET_C(R156.2, IC37.1/*A1*/) 319 NET_C(IC37.14/*C1*/, C73.1) 320 NET_C(IC37.15/*RC1*/, C73.2, R155.2) 321 NET_C(IC37.4/*QQ1*/, D1.K) 322 NET_C(D1.A, R89.1) 323 NET_C(R89.2, C45.1, R90.2) 324 NET_C(R91.2, R90.1, IC27.12/*PLUS4*/) 325 NET_C(IC27.14/*OUT4*/, IC27.13/*MINUS4*/, IC20.2/*CON1*/) 326 327 // -------------------------------- 328 // NOISE 329 RES(R132, RES_K(220)) 330 RES(R133, RES_K(22)) 331 RES(R134, RES_K(15)) 332 RES(R93, RES_K(15)) 333 RES(R92, RES_K(150)) 334 RES(R88, RES_K(100)) 335 CAP(C62, CAP_U(2.2)) 336 CAP(C63, CAP_U(0.01)) 337 CAP(C48, CAP_U(0.01)) 338 339 MM5837(IC26) 340 PARAM(IC26.FREQ, 24000) 341 NET_C(GND, IC26.VDD/*1*/, IC26.VGG/*2*/) 342 NET_C(V12, IC26.VSS/*4*/) // left out decoupling caps (0.1uF & 22uF parallel to GND) 343 344 LM324_DIP(IC27) // shared by GUN_SOUND, _, GUN_SOUND, GUN_SOUND 345 NET_C(GND, IC27.11/*GND*/) 346 NET_C(V12, IC27.4/*VCC*/) 347 348 NET_C(IC26.OUT/*3*/, C62.1) 349 NET_C(C62.2, R132.1) 350 NET_C(R132.2, IC27.2/*MINUS1*/, R133.1) 351 NET_C(IC27.3/*PLUS1*/, V6) 352 NET_C(IC27.1/*OUT1*/, R133.2, R134.1) 353 NET_C(R134.2, R93.1, C63.1) 354 NET_C(R93.2, C48.1, IC27.10/*PLUS3*/) 355 NET_C(C48.2, GND) 356 NET_C(IC27.8/*OUT3*/, C63.2, R92.1, C46.1) 357 NET_C(IC27.9/*MINUS3*/, R92.2, R88.1) 358 NET_C(R88.2, V6) 359 360 // -------------------------------- 361 // CON, MIX -> OUT 362 MB4391_DIP(IC20) // shared by GUN_SOUND, CRY_SOUND 363 NET_C(GND, IC20.3/*GND1*/, IC20.7/*GND2*/) 364 NET_C(V5, IC20.16/*VCC1*/, IC20.12/*VCC2*/) 365 CAP(C46, CAP_U(2.2)) 366 CAP(C25, CAP_U(2.2)) 367 CAP(C26, CAP_P(680)) 368 NET_C(C26.2, GND) 369 NET_C(IC20.14/*RO1*/, C26.1) 370 NET_C(IC20.1/*IN1*/, C46.2) 371 NET_C(IC20.15/*OUT1*/, C25.1) 372 373 // -------------------------------- 374 // UNUSED PINS 375 NC_(IC37.13/*Q1*/) 376 377 UNUSED_OP_OUT_MINUS(IC27.7/*OUT2*/, IC27.6/*MINUS2*/) 378 UNUSED_OP_PLUS(IC27.5/*PLUS2*/) 379 380 // -------------------------------- 381 // OUTPUT 382 NET_C(GUN_SOUND, C25.2) 383 384 385 /* ------------------------------------------------------------------------ 386 * JEEP_SOUND 387 * -----------------------------------------------------------------------*/ 388 // INPUT 389 NET_C(JEEP_ON, R151.2) 390 391 // -------------------------------- 392 TTL_7408_DIP(IC29) // shared by _, JEEP_SOUND, _, _ 393 NET_C(GND, IC29.7/*GND*/) 394 NET_C(V5, IC29.14/*VCC*/) 395 396 TTL_7416_DIP(IC36) // shared by _, _, JEEP_SOUND, _, _, _ 397 NET_C(GND, IC36.7/*GND*/) 398 NET_C(V5, IC36.14/*VCC*/) 399 400 TTL_7474_DIP(IC30) 401 NET_C(GND, IC30.7/*GND*/) 402 NET_C(V5, IC30.14/*VCC*/) 403 404 TTL_7474_DIP(IC32) 405 NET_C(GND, IC32.7/*GND*/) 406 NET_C(V5, IC32.14/*VCC*/) 407 408 NE555(IC31) 409 NET_C(GND, IC31.GND/*1*/) 410 NET_C(V5, IC31.VCC/*8*/) 411 412 RES(R123, RES_K(51)) 413 RES(R150, RES_K(1)) 414 RES(R151, RES_K(1)) 415 RES(R152, RES_K(1)) 416 RES(R153, RES_K(33)) 417 RES(R154, RES_K(1)) 418 RES(R157, RES_K(51)) 419 RES(R158, RES_K(51)) 420 CAP(C58, CAP_U(0.047)) 421 CAP(C59, CAP_U(2.2)) 422 CAP(C72, CAP_U(0.1)) 423 424 NET_C(GND, C72.2, C58.2) 425 NET_C(V5, R150.1, R152.1, R154.1, R151.1 426 , IC30.1/*CLR1*/, IC30.4/*PR1*/, IC30.10/*PR2*/, IC30.13/*CLR2*/ 427 , IC32.1/*CLR1*/, IC32.4/*PR1*/, IC32.10/*PR2*/, IC32.13/*CLR2*/ 428 ) 429 NET_C(IC36.5/*A3*/, R151.2) 430 NET_C(IC36.6/*Q3*/, R152.2 431 , IC31.RESET/*4*/ 432 ) 433 NET_C(IC31.DISCH/*7*/, R150.2, R153.1) 434 NET_C(IC31.THRESH/*6*/, IC31.TRIG/*2*/, R153.2, C72.1) 435 NET_C(IC31.OUT/*3*/, R154.2 436 , IC32.3/*CLK1*/, IC30.3/*CLK1*/, IC30.11/*CLK2*/ 437 ) 438 NET_C(IC32.6/*QQ1*/, R157.1 439 , IC32.2/*D1*/, IC32.11/*CLK2*/ 440 ) 441 NET_C(IC32.8/*QQ2*/, IC32.12/*D2*/, R158.1) 442 NET_C(IC29.6/*Q2*/, IC30.2/*D1*/) 443 NET_C(IC30.5/*Q1*/, IC30.12/*D2*/) 444 NET_C(IC30.6/*QQ1*/, IC29.4/*A2*/) 445 NET_C(IC30.8/*QQ2*/, IC29.5/*B2*/, R123.1) 446 NET_C(R123.2, R157.2, R158.2, C58.1, C59.1) 447 448 // -------------------------------- 449 // UNUSED PINS 450 NC_(IC30.9/*Q2*/) 451 452 NC_(IC31.CONT/*5*/) 453 454 NC_(IC32.5/*Q1*/) 455 NC_(IC32.9/*Q2*/) 456 457 UNUSED_TTL_I(IC29.1/*A1*/) 458 UNUSED_TTL_I(IC29.2/*B1*/) 459 UNUSED_TTL_Q(IC29.3/*Q1*/) 460 UNUSED_TTL_Q(IC29.8/*Q3*/) 461 UNUSED_TTL_I(IC29.9/*A3*/) 462 UNUSED_TTL_I(IC29.10/*B3*/) 463 UNUSED_TTL_Q(IC29.11/*Q4*/) 464 UNUSED_TTL_I(IC29.12/*A4*/) 465 UNUSED_TTL_I(IC29.13/*B4*/) 466 467 UNUSED_TTL_I(IC36.1/*A1*/) 468 UNUSED_TTL_Q(IC36.2/*Q1*/) 469 UNUSED_TTL_I(IC36.3/*A2*/) 470 UNUSED_TTL_Q(IC36.4/*Q2*/) 471 UNUSED_TTL_Q(IC36.8/*Q4*/) 472 UNUSED_TTL_I(IC36.9/*A4*/) 473 UNUSED_TTL_Q(IC36.10/*Q5*/) 474 UNUSED_TTL_I(IC36.11/*A5*/) 475 UNUSED_TTL_Q(IC36.12/*Q6*/) 476 UNUSED_TTL_I(IC36.13/*A6*/) 477 478 // -------------------------------- 479 // OUTPUT 480 NET_C(JEEP_SOUND, C59.2) 481 482 483 /* ------------------------------------------------------------------------ 484 * POINT_SOUND 485 * -----------------------------------------------------------------------*/ 486 // INPUT 487 NET_C(POINT_TRG, R148.2) 488 489 // -------------------------------- 490 // TRG -> CON 491 RES(R148, RES_K(1)) 492 RES(R149, RES_K(47)) 493 MA150(D5) 494 RES(R159, 470) 495 RES(R164, RES_K(470)) 496 RES(R165, RES_K(470)) 497 RES(R163, RES_K(27)) 498 RES(R166, RES_K(12)) 499 RES(R169, RES_K(30)) 500 RES(R168, RES_K(10)) 501 CAP(C71, CAP_U(1)) 502 CAP(C74, CAP_U(1)) 503 NET_C(R148.1, V5) 504 NET_C(IC35.9/*A2*/, R148.2) 505 NET_C(IC35.10/*B2*/, IC35.11/*CLRQ2*/, V5) 506 NET_C(IC35.6/*C2*/, C71.1) 507 NET_C(IC35.7/*RC2*/, C71.2, R149.2) 508 NET_C(R149.1, V5) 509 NET_C(IC35.12/*QQ2*/, D5.K) 510 NET_C(D5.A, R159.1) 511 NET_C(R159.2, C74.1, R165.2) 512 NET_C(C74.2, GND) 513 NET_C(IC38.12/*PLUS4*/, R165.1, R164.2) 514 NET_C(R164.1, V5) 515 NET_C(IC38.14/*OUT4*/, IC38.13/*MINUS4*/, R166.1) 516 NET_C(R163.1, V12) 517 NET_C(IC38.10/*PLUS3*/, R163.2, R168.1) 518 NET_C(R168.2, GND) 519 NET_C(IC38.9/*MINUS3*/, R166.2, R169.1) 520 NET_C(IC38.8/*OUT3*/, R169.2) 521 522 // -------------------------------- 523 // UPPER STAGE -> MIX 524 RES(R79, RES_K(30)) 525 RES(R80, RES_K(51)) 526 RES(R81, RES_K(51)) 527 RES(R78, RES_K(15)) 528 RES(R32, RES_K(30)) 529 RES(R33, RES_K(10)) 530 CAP(C43, CAP_U(0.022)) 531 C458(TR13) 532 NE555(IC18) 533 NET_C(GND, IC18.GND/*1*/) 534 NET_C(V5, IC18.VCC/*8*/) 535 LM324_DIP(IC25) // shared by ANIMAL_SOUND, POINT_SOUND, POINT_SOUND, POINT_SOUND 536 NET_C(GND, IC25.11/*GND*/) 537 NET_C(V12, IC25.4/*VCC*/) 538 NET_C(IC38.8/*OUT3*/, R79.1, R80.1) 539 NET_C(IC25.12/*PLUS4*/, R80.2, R81.1) 540 NET_C(R81.2, GND) 541 NET_C(IC25.13/*MINUS4*/, R79.2, C43.1, R78.1) 542 NET_C(IC18.RESET/*4*/, RST) 543 NET_C(R33.1, V5) 544 NET_C(IC18.DISCH/*7*/, R33.2) 545 NET_C(TR13.B, IC18.DISCH/*7*/) // B & C swapped, wrong in schematics 546 NET_C(TR13.C, R78.2) // B & C swapped, wrong in schematics 547 NET_C(TR13.E, GND) 548 NET_C(IC25.14/*OUT4*/, IC18.TRIG/*2*/, IC18.THRESH/*6*/, C43.2, R32.1) 549 550 // -------------------------------- 551 // MIDDLE STAGE -> UPPER STAGE 552 RES(R84, RES_K(30)) 553 RES(R83, RES_K(51)) 554 RES(R82, RES_K(51)) 555 RES(R85, RES_K(15)) 556 RES(R35, RES_K(30)) 557 RES(R36, RES_K(10)) 558 RES(R37, RES_K(2.2)) 559 CAP(C44, CAP_P(6800)) 560 C458(TR14) 561 NE555(IC19) 562 NET_C(GND, IC19.GND/*1*/) 563 NET_C(V5, IC19.VCC/*8*/) 564 NET_C(IC38.8/*OUT3*/, R83.1, R84.1) 565 NET_C(IC25.10/*PLUS3*/, R83.2, R82.1) 566 NET_C(R82.2, GND) 567 NET_C(IC25.9/*MINUS3*/, R84.2, C44.1, R85.1) 568 NET_C(IC19.RESET/*4*/, RST) 569 NET_C(R36.1, V5) 570 NET_C(IC19.DISCH/*7*/, R36.2) 571 NET_C(TR14.B, IC19.DISCH/*7*/) // B & C swapped, wrong in schematics 572 NET_C(TR14.C, R85.2) // B & C swapped, wrong in schematics 573 NET_C(TR14.E, GND) 574 NET_C(IC25.8/*OUT3*/, IC19.TRIG/*2*/, IC19.THRESH/*6*/, C44.2, R35.2) 575 NET_C(R35.1, R32.2) 576 NET_C(R37.1, IC18.CONT/*5*/, IC19.CONT/*5*/) 577 578 // -------------------------------- 579 // LOWER STAGE -> UPPER STAGE 580 RES(R130, RES_K(30)) 581 RES(R129, RES_K(51)) 582 RES(R128, RES_K(51)) 583 RES(R131, RES_K(15)) 584 RES(R34, RES_K(10)) 585 CAP(C61, CAP_U(0.068)) 586 CAP(C60, CAP_U(0.022)) 587 CAP(C23, CAP_U(0.01)) 588 C458(TR4) 589 NE555(IC8) 590 NET_C(GND, IC8.GND/*1*/) 591 NET_C(V5, IC8.VCC/*8*/) 592 NET_C(IC38.8/*OUT3*/, R130.1, R129.1) 593 NET_C(IC25.5/*PLUS2*/, R129.2, R128.1) 594 NET_C(R128.2, GND) 595 NET_C(IC25.6/*MINUS2*/, R130.2, C60.1, C61.1, R131.1) 596 NET_C(IC8.RESET/*4*/, RST) 597 NET_C(IC8.CONT/*5*/, C23.1) 598 NET_C(C23.2, GND) 599 NET_C(R34.1, V5) 600 NET_C(IC8.DISCH/*7*/, R34.2) 601 NET_C(TR4.B, IC8.DISCH/*7*/) // B & C swapped, wrong in schematics 602 NET_C(TR4.C, R131.2) // B & C swapped, wrong in schematics 603 NET_C(TR4.E, GND) 604 NET_C(IC25.7/*OUT2*/, IC8.TRIG/*2*/, IC8.THRESH/*6*/, C61.2, C60.2, R37.2) 605 606 // -------------------------------- 607 // CON, MIX -> OUT 608 CAP(C15, CAP_U(2.2)) 609 CAP(C16, CAP_P(680)) 610 CAP(C13, CAP_U(2.2)) 611 NET_C(R32.2, C13.1) 612 NET_C(IC5.1/*IN1*/, C13.2) 613 NET_C(IC5.15/*OUT1*/, C15.1) 614 NET_C(IC5.14/*RO1*/, C16.1) 615 NET_C(C16.2, GND) 616 NET_C(IC38.14/*OUT4*/, IC5.2/*CON1*/) 617 618 // -------------------------------- 619 // UNUSED PINS 620 NC_(IC35.5/*Q2*/) 621 622 NET_C(IC8.OUT/*3*/, NC_IC8_OUT.1) // not connected in schematics 623 RES(NC_IC8_OUT, RES_M(1)) 624 NET_C(NC_IC8_OUT.2, GND) 625 NET_C(IC18.OUT/*3*/, NC_IC18_OUT.1) // not connected in schematics 626 RES(NC_IC18_OUT, RES_M(1)) 627 NET_C(NC_IC18_OUT.2, GND) 628 NET_C(IC19.OUT/*3*/, NC_IC19_OUT.1) // not connected in schematics 629 RES(NC_IC19_OUT, RES_M(1)) 630 NET_C(NC_IC19_OUT.2, GND) 631 632 // -------------------------------- 633 // OUTPUT 634 NET_C(POINT_SOUND, C15.2) 635 636 637 /* ------------------------------------------------------------------------ 638 * HIT_SOUND 639 * -----------------------------------------------------------------------*/ 640 // INPUT 641 NET_C(HIT_TRG, R147.1) 642 643 // -------------------------------- 644 // TRG -> CON 645 TTL_74123_DIP(IC35) // shared by HIT_SOUND, POINT_SOUND 646 NET_C(GND, IC35.8/*GND*/) 647 NET_C(V5, IC35.16/*VCC*/) 648 RES(R147, RES_K(1)) 649 RES(R146, RES_K(47)) 650 RES(R160, 470) 651 RES(R161, RES_K(470)) 652 RES(R162, RES_K(470)) 653 CAP(C70, CAP_U(1)) 654 CAP(C75, CAP_U(1)) 655 MA150(D6) 656 NET_C(IC35.1/*A1*/, R147.1) 657 NET_C(R147.2, V5) 658 NET_C(IC35.2/*B1*/, IC35.3/*CLRQ1*/, V5) 659 NET_C(IC35.14/*C1*/, C70.1) 660 NET_C(IC35.15/*RC1*/, C70.2, R146.2) 661 NET_C(R146.1, V5) 662 NET_C(IC35.4/*QQ1*/, D6.K) 663 NET_C(D6.A, R160.1) 664 NET_C(R160.2, C75.1, R161.2) 665 NET_C(C75.2, GND) 666 NET_C(IC38.3/*PLUS1*/, R161.1, R162.2) 667 NET_C(R162.1, V5) 668 NET_C(IC38.1/*OUT1*/, IC38.2/*MINUS1*/) 669 670 // -------------------------------- 671 // CON, MIX -> OUT 672 MB4391_DIP(IC5) // shared by POINT_SOUND, HIT_SOUND 673 NET_C(GND, IC5.3/*GND1*/, IC5.7/*GND2*/) 674 NET_C(V5, IC5.16/*VCC1*/, IC5.12/*VCC2*/) 675 CAP(C18, CAP_P(680)) 676 NET_C(C18.1, IC5.10/*RO2*/) 677 NET_C(C18.2, GND) 678 CAP(C14, CAP_U(2.2)) 679 CAP(C17, CAP_U(2.2)) 680 NET_C(IC5.6/*CON2*/, IC38.1/*OUT1*/) 681 NET_C(IC5.11/*OUT2*/, C17.1) 682 NET_C(IC5.5/*IN2*/, C14.2) 683 684 // -------------------------------- 685 // LOWER STAGE -> MIX 686 C458(TR11) 687 NE555(IC16) 688 NET_C(GND, IC16.GND/*1*/) 689 NET_C(V5, IC16.VCC/*8*/) 690 RES(R71, RES_K(51)) 691 RES(R70, RES_K(30)) 692 RES(R72, RES_K(51)) 693 RES(R69, RES_K(15)) 694 RES(R28, RES_K(10)) 695 RES(R76, RES_K(1)) 696 CAP(C39, CAP_U(0.01)) 697 CAP(C40, CAP_U(0.0033)) 698 NET_C(IC24.14/*OUT4*/, C14.1) 699 NET_C(IC24.7/*OUT2*/, R70.1, R71.1) 700 NET_C(IC24.12/*PLUS4*/, R71.2, R72.1) 701 NET_C(R72.2, GND) 702 NET_C(IC24.13/*MINUS4*/, R70.2, C39.1, C40.1, R69.1) 703 NET_C(IC24.14/*OUT4*/, IC16.TRIG/*2*/, IC16.THRESH/*6*/, C39.2, C40.2) 704 NET_C(IC16.RESET/*4*/, RST) 705 NET_C(IC16.CONT/*5*/, R76.2) 706 NET_C(R28.1, V5) 707 NET_C(TR11.B, IC16.DISCH/*7*/, R28.2) // B & C swapped, wrong in schematics 708 NET_C(TR11.C, R69.2) // B & C swapped, wrong in schematics 709 NET_C(TR11.E, GND) 710 711 NET_C(IC24.8/*OUT3*/, R76.1) 712 713 RES(R119, RES_K(10)) 714 RES(R120, RES_K(39)) 715 RES(R121, RES_K(47)) 716 RES(R122, RES_K(15)) 717 718 LM324_DIP(IC24) // shared by EMAR_SOUND, HIT_SOUND, HIT_SOUND, HIT_SOUND 719 NET_C(GND, IC24.11/*GND*/) 720 NET_C(V12, IC24.4/*VCC*/) 721 722 NET_C(V12, R120.1) 723 NET_C(R120.2, R119.1) 724 NET_C(IC24.5/*PLUS2*/, R120.2) 725 NET_C(R119.2, GND) 726 NET_C(IC24.6/*MINUS2*/, R122.2, R121.1) 727 NET_C(IC24.7/*OUT2*/, R121.2) 728 729 NET_C(IC24.8/*OUT3*/, R122.1) 730 731 // -------------------------------- 732 // UPPER STAGE -> LOWER STAGE 733 C458(TR12) 734 NE555(IC17) 735 NET_C(GND, IC17.GND/*1*/) 736 NET_C(V5, IC17.VCC/*8*/) 737 RES(R75, RES_K(470)) 738 RES(R74, RES_K(51)) 739 RES(R73, RES_K(51)) 740 RES(R77, RES_K(5.1)) 741 RES(R30, RES_K(10)) 742 CAP(C41, CAP_U(2.2)) 743 CAP(C42, CAP_U(2.2)) 744 CAP(C21, CAP_U(0.01)) 745 NET_C(V6, R75.1, R74.1) 746 NET_C(C41.1, C42.1) 747 NET_C(IC24.9/*MINUS3*/, R75.2, R77.1, C41.2) 748 NET_C(IC24.10/*PLUS3*/, R74.2, R73.1) 749 NET_C(R73.2, GND) 750 NET_C(IC17.RESET/*4*/, RST) 751 NET_C(R30.1, V5) 752 NET_C(IC17.DISCH/*7*/, R30.2) 753 NET_C(IC17.CONT/*5*/, C21.1) 754 NET_C(C21.2, GND) 755 NET_C(TR12.B, IC17.DISCH/*7*/) // B & C swapped, wrong in schematics 756 NET_C(TR12.C, R77.2) // B & C swapped, wrong in schematics 757 NET_C(TR12.E, GND) 758 NET_C(IC24.8/*OUT3*/, IC17.TRIG/*2*/, IC17.THRESH/*6*/, C42.2) 759 760 // -------------------------------- 761 // UNUSED PINS 762 NC_(IC35.13/*Q1*/) 763 764 NET_C(IC17.OUT/*3*/, NC_IC17_OUT.1) // not connected in schematics 765 RES(NC_IC17_OUT, RES_M(1)) 766 NET_C(NC_IC17_OUT.2, GND) 767 NET_C(IC16.OUT/*3*/, NC_IC16_OUT.1) // not connected in schematics 768 RES(NC_IC16_OUT, RES_M(1)) 769 NET_C(NC_IC16_OUT.2, GND) 770 771 // -------------------------------- 772 // OUTPUT 773 NET_C(HIT_SOUND, C17.2) 774 775 776 /* ------------------------------------------------------------------------ 777 * ANIMAL_SOUND 778 * -----------------------------------------------------------------------*/ 779 // INPUT 780 NET_C(ANIMAL_TRG, R145.2) 781 782 // -------------------------------- 783 // TGG -> TRG2 -> CON 784 RES(R145, RES_K(1)) 785 RES(R143, RES_K(47)) 786 RES(R144, RES_K(47)) 787 RES(R106, 470) 788 RES(R108, RES_K(470)) 789 RES(R107, RES_K(470)) 790 CAP(C67, CAP_U(47)) 791 CAP(C66, CAP_U(47)) 792 CAP(C69, CAP_U(1)) 793 CAP(C53, CAP_U(1)) 794 MA150(D4) 795 TTL_74123_DIP(IC34) // shared by ANIMAL_SOUND, ANIMAL_SOUND 796 NET_C(GND, IC34.8/*GND*/) 797 NET_C(V5, IC34.16/*VCC*/) 798 NET_C(R145.1, V5) 799 NET_C(IC34.1/*A1*/, R145.2) 800 NET_C(IC34.2/*B1*/, IC34.3/*CLRQ1*/, V5) 801 NET_C(IC34.14/*C1*/, C67.2, C66.2) 802 NET_C(IC34.15/*RC1*/, C67.1, C66.1, R143.2) 803 NET_C(R143.1, V5) 804 NET_C(IC34.1/*A1*/, IC34.9/*A2*/) 805 NET_C(IC34.13/*Q1*/, IC34.10/*B2*/, IC34.11/*CLRQ2*/) 806 NET_C(IC34.6/*C2*/, C69.2) 807 NET_C(IC34.7/*RC2*/, C69.1, R144.2) 808 NET_C(R144.1, V5) 809 NET_C(IC34.12/*QQ2*/, D4.K) 810 NET_C(D4.A, R106.1) 811 NET_C(R106.2, C53.1, R107.2) 812 NET_C(C53.2, GND) 813 NET_C(IC23.3/*PLUS1*/, R107.1, R108.2) 814 NET_C(R108.1, V5) 815 NET_C(IC23.1/*OUT1*/, IC23.2/*MINUS1*/, IC4.6/*CON2*/) 816 817 // -------------------------------- 818 C458(TR16) 819 RES(R110, RES_K(10)) 820 NET_C(IC34.13/*Q1*/, R110.1) 821 NET_C(TR16.B, R110.2) // B & C swapped, wrong in schematics 822 NET_C(TR16.C, R109.2) // B & C swapped, wrong in schematics 823 NET_C(TR16.E, GND) 824 825 C458(TR15) 826 RES(R109, RES_K(1)) 827 RES(R44, 220) 828 NET_C(R109.1, V5) 829 NET_C(TR15.B, R109.2) // B & C swapped, wrong in schematics 830 NET_C(TR15.C, C24.1) // B & C swapped, wrong in schematics 831 NET_C(TR15.E, R44.1) 832 NET_C(R44.2, C24.2) 833 834 // -------------------------------- 835 // UPPER STAGE -> MIDDLE STAGE 836 RES(R39, RES_K(51)) 837 RES(R38, RES_K(22)) 838 RES(R15, RES_K(51)) 839 RES(R41, RES_K(22)) 840 RES(R42, RES_K(36)) 841 RES(R43, RES_K(10)) 842 RES(R40, RES_M(1)) 843 CAP(C24, CAP_U(100)) 844 LM324_DIP(IC9) // shared by ANIMAL_SOUND, ANIMAL_SOUND, ANIMAL_SOUND, ANIMAL_SOUND 845 NET_C(GND, IC9.11/*GND*/) 846 NET_C(V12, IC9.4/*VCC*/) 847 NET_C(R40.1, R39.1, V12) 848 NET_C(IC9.5/*PLUS2*/, R39.2, R15.1) 849 NET_C(R15.2, GND) 850 NET_C(IC9.6/*MINUS2*/, R40.2, C24.1) 851 NET_C(IC9.7/*OUT2*/, C24.2, R38.1) 852 NET_C(R42.1, V12) 853 NET_C(IC9.3/*PLUS1*/, R42.2, R43.1) 854 NET_C(R43.2, GND) 855 NET_C(IC9.2/*MINUS1*/, R38.2, R41.1) 856 NET_C(IC9.1/*OUT1*/, R41.2) 857 858 // -------------------------------- 859 // MIDDLE STAGE -> MIX 860 RES(R11, RES_K(30)) 861 RES(R12, RES_K(51)) 862 RES(R13, RES_K(51)) 863 RES(R10, RES_K(1)) 864 RES(R9, RES_K(10)) 865 RES(R14, RES_K(5.1)) 866 RES(R16, RES_K(10)) 867 CAP(C1, CAP_U(0.033)) 868 C458(TR1) 869 NE555(IC1) 870 NET_C(GND, IC1.GND/*1*/) 871 NET_C(V5, IC1.VCC/*8*/) 872 NET_C(IC9.1/*OUT1*/, R11.1, R12.1) 873 NET_C(IC9.12/*PLUS4*/, R12.2, R13.1) 874 NET_C(R13.2, GND) 875 NET_C(IC9.13/*MINUS4*/, R11.2, C1.1, R10.1) 876 NET_C(IC1.RESET/*4*/, RST) 877 NET_C(IC1.DISCH/*7*/, R9.2) 878 NET_C(R9.1, V5) 879 NET_C(TR1.B, IC1.DISCH/*7*/) // B & C swapped, wrong in schematics 880 NET_C(TR1.C, R10.2) // B & C swapped, wrong in schematics 881 NET_C(TR1.E, GND) 882 NET_C(IC9.14/*OUT4*/, IC1.TRIG/*2*/, IC1.THRESH/*6*/, C1.2) 883 NET_C(IC9.14/*OUT4*/, R16.1) 884 NET_C(IC1.CONT/*5*/, R14.1) 885 886 RES(R17, RES_K(5.1)) 887 RES(R18, RES_K(3.3)) 888 NET_C(IC9.8/*OUT3*/, IC9.9/*MINUS3*/, R14.2) 889 NET_C(IC9.10/*PLUS3*/, R17.2, R18.2) 890 891 // -------------------------------- 892 // LOWER STAGE -> MIDDLE STAGE 893 RES(R59, RES_K(560)) 894 RES(R58, RES_K(51)) 895 RES(R57, RES_K(51)) 896 RES(R60, RES_K(5.1)) 897 RES(R23, RES_K(10)) 898 CAP(C34, CAP_U(1)) 899 CAP(C35, CAP_U(1)) 900 CAP(C7, CAP_U(0.01)) 901 C458(TR8) 902 NE555(IC13) 903 NET_C(GND, IC13.GND/*1*/) 904 NET_C(V5, IC13.VCC/*8*/) 905 NET_C(R59.1, R58.1, V6) 906 NET_C(IC22.10/*PLUS3*/, R58.2, R57.1) 907 NET_C(R57.2, GND) 908 NET_C(IC22.9/*MINUS3*/, R59.2, C34.2, R60.1) 909 NET_C(C34.1, C35.1) 910 NET_C(IC13.RESET/*4*/, RST) 911 NET_C(IC13.DISCH/*7*/, R23.2) 912 NET_C(R23.1, V5) 913 NET_C(IC13.CONT/*5*/, C7.1) 914 NET_C(C7.2, GND) 915 NET_C(TR8.B, IC13.DISCH/*7*/) // B & C swapped, wrong in schematics 916 NET_C(TR8.C, R60.2) // B & C swapped, wrong in schematics 917 NET_C(TR8.E, GND) 918 NET_C(IC22.8/*OUT3*/, IC13.TRIG/*2*/, IC13.THRESH/*6*/, C35.2, R18.1) 919 920 // -------------------------------- 921 // BOTTOM STAGE -> MIDDLE STAGE 922 RES(R127, RES_K(56)) 923 RES(R125, RES_K(51)) 924 RES(R124, RES_K(51)) 925 RES(R126, RES_K(30)) 926 RES(R31, RES_K(10)) 927 CAP(C57, CAP_U(1)) 928 CAP(C56, CAP_U(1)) 929 CAP(C22, CAP_U(0.01)) 930 C458(TR3) 931 NE555(IC7) 932 NET_C(GND, IC7.GND/*1*/) 933 NET_C(V5, IC7.VCC/*8*/) 934 NET_C(R127.1, R125.1, V6) 935 NET_C(IC25.3/*PLUS1*/, R125.2, R124.1) 936 NET_C(R124.2, GND) 937 NET_C(IC25.2/*MINUS1*/, R127.2, C57.2, R126.1) 938 NET_C(C57.1, C56.1) 939 NET_C(IC7.RESET/*4*/, RST) 940 NET_C(IC7.CONT/*5*/, C22.1) 941 NET_C(C22.2, GND) 942 NET_C(IC7.DISCH/*7*/, R31.2) 943 NET_C(R31.1, V5) 944 NET_C(TR3.B, IC7.DISCH/*7*/) // B & C swapped, wrong in schematics 945 NET_C(TR3.C, R126.2) // B & C swapped, wrong in schematics 946 NET_C(TR3.E, GND) 947 NET_C(IC25.1/*OUT1*/, IC7.TRIG/*2*/, IC7.THRESH/*6*/, C56.2) 948 NET_C(IC25.1/*OUT1*/, R17.1) 949 950 // -------------------------------- 951 // CON, MIX -> OUT 952 CAP(C6, CAP_U(2.2)) 953 CAP(C11, CAP_U(2.2)) 954 CAP(C12, CAP_P(680)) 955 NET_C(IC4.10/*RO2*/, C12.1) 956 NET_C(C12.2, GND) 957 NET_C(R16.2, C6.1) 958 NET_C(IC4.5/*IN2*/, C6.2) 959 NET_C(IC4.11/*OUT2*/, C11.1) 960 961 // -------------------------------- 962 // UNUSED PINS 963 NC_(IC34.4/*QQ1*/) 964 NC_(IC34.5/*Q2*/) 965 966 NET_C(IC1.OUT/*3*/, NC_IC1_OUT.1) // not connected in schematics 967 RES(NC_IC1_OUT, RES_M(1)) 968 NET_C(NC_IC1_OUT.2, GND) 969 970 NET_C(IC13.OUT/*3*/, NC_IC13_OUT.1) // not connected in schematics 971 RES(NC_IC13_OUT, RES_M(1)) 972 NET_C(NC_IC13_OUT.2, GND) 973 974 NET_C(IC7.OUT/*3*/, NC_IC7_OUT.1) // not connected in schematics 975 RES(NC_IC7_OUT, RES_M(1)) 976 NET_C(NC_IC7_OUT.2, GND) 977 978 979 // -------------------------------- 980 // OUTPUT 981 NET_C(ANIMAL_SOUND, C11.2) 982 983 984 /* ------------------------------------------------------------------------ 985 * EMAR_SOUND 986 * -----------------------------------------------------------------------*/ 987 // INPUT 988 NET_C(EMAR_TRG, R142.2) 989 990 // -------------------------------- 991 // TRG -> CON 992 RES(R142, RES_K(1)) 993 RES(R141, RES_K(47)) 994 MA150(D3) 995 RES(R103, 470) 996 RES(R105, RES_K(470)) 997 RES(R104, RES_K(470)) 998 CAP(C68, CAP_U(1)) 999 CAP(C52, CAP_U(1)) 1000 NET_C(IC33.9/*A2*/, R142.2) 1001 NET_C(R142.1, V5) 1002 NET_C(IC33.10/*B2*/, IC33.11/*CLRQ2*/, V5) 1003 NET_C(IC33.6/*C2*/, C68.1) 1004 NET_C(IC33.7/*RC2*/, C68.2, R141.2) 1005 NET_C(R141.1, V5) 1006 NET_C(IC33.12/*QQ2*/, D3.K) 1007 NET_C(D3.A, R103.1) 1008 NET_C(R103.2, C52.1, R105.2) 1009 NET_C(C52.2, GND) 1010 NET_C(IC22.5/*PLUS2*/, R105.1, R104.2) 1011 NET_C(R104.1, V5) 1012 NET_C(IC22.7/*OUT2*/, IC22.6/*MINUS2*/) 1013 1014 // -------------------------------- 1015 // CON, MIX -> OUT 1016 MB4391_DIP(IC4) // shared by EMAR_SOUND, ANIMAL_SOUND 1017 NET_C(GND, IC4.3/*GND1*/, IC4.7/*GND2*/) 1018 NET_C(V5, IC4.16/*VCC1*/, IC4.12/*VCC2*/) 1019 RES(R24, RES_K(10)) 1020 CAP(C8, CAP_U(2.2)) 1021 CAP(C9, CAP_U(2.2)) 1022 CAP(C10, CAP_P(680)) 1023 NET_C(IC22.7/*OUT2*/, IC4.2/*CON1*/) 1024 NET_C(IC4.14/*RO1*/, C10.1) 1025 NET_C(C10.2, GND) 1026 NET_C(IC4.15/*OUT1*/, C9.1) 1027 NET_C(IC4.1/*IN1*/, C8.2) 1028 NET_C(R24.2, C8.1) 1029 1030 LM324_DIP(IC23) // shared by ANIMAL_SOUND, EMAR_SOUND, EMAR_SOUND, EMAR_SOUND 1031 NET_C(GND, IC23.11/*GND*/) 1032 NET_C(V12, IC23.4/*VCC*/) 1033 1034 // -------------------------------- 1035 // LOWER STAGE -> UPPER STAGE 1036 C458(TR2) 1037 NE555(IC6) 1038 NET_C(GND, IC6.GND/*1*/) 1039 NET_C(V5, IC6.VCC/*8*/) 1040 RES(R116, RES_K(470)) 1041 RES(R117, RES_K(51)) 1042 RES(R118, RES_K(51)) 1043 RES(R115, RES_K(51)) 1044 RES(R29, RES_K(10)) 1045 CAP(C55, CAP_U(3.3)) 1046 CAP(C54, CAP_U(3.3)) 1047 CAP(C20, CAP_U(0.01)) 1048 NET_C(R116.1, R117.1, V6) 1049 NET_C(IC24.3/*PLUS1*/, R117.2, R118.1) 1050 NET_C(R118.2, GND) 1051 NET_C(IC24.2/*MINUS1*/, R116.2, C55.2, R115.1) 1052 NET_C(C55.1, C54.1) 1053 NET_C(IC6.RESET/*4*/, RST) 1054 NET_C(IC6.CONT/*5*/, C20.1) 1055 NET_C(C20.2, GND) 1056 NET_C(IC6.DISCH/*7*/, R29.2) 1057 NET_C(R29.1, V5) 1058 NET_C(TR2.B, IC6.DISCH/*7*/) // B & C swapped, wrong in schematics 1059 NET_C(TR2.C, R115.2) // B & C swapped, wrong in schematics 1060 NET_C(TR2.E, GND) 1061 NET_C(IC24.1/*OUT1*/, IC6.TRIG/*2*/, IC6.THRESH/*6*/, C54.2) 1062 1063 NET_C(IC24.1/*OUT1*/, R113.1) 1064 RES(R113, RES_K(22)) 1065 RES(R111, RES_K(27)) 1066 RES(R112, RES_K(10)) 1067 RES(R114, RES_K(22)) 1068 NET_C(R111.1, V12) 1069 NET_C(IC23.5/*PLUS2*/, R111.2, R112.1) 1070 NET_C(R112.2, GND) 1071 NET_C(IC23.6/*MINUS2*/, R113.2, R114.1) 1072 NET_C(IC23.7/*OUT2*/, R114.2) 1073 1074 // -------------------------------- 1075 // MIDDLE STAGE -> UPPER STAGE 1076 C458(TR10) 1077 NE555(IC15) 1078 NET_C(GND, IC15.GND/*1*/) 1079 NET_C(V5, IC15.VCC/*8*/) 1080 RES(R67, RES_K(220)) 1081 RES(R66, RES_K(51)) 1082 RES(R65, RES_K(51)) 1083 RES(R68, RES_K(100)) 1084 RES(R27, RES_K(10)) 1085 RES(R26, RES_K(33)) 1086 CAP(C38, CAP_U(1)) 1087 CAP(C37, CAP_U(1)) 1088 CAP(C19, CAP_U(0.01)) 1089 NET_C(R67.1, R66.1, V6) 1090 NET_C(IC23.10/*PLUS3*/, R66.2, R65.1) 1091 NET_C(R65.2, GND) 1092 NET_C(IC23.9/*MINUS3*/, R67.2, C37.2, R68.1) 1093 NET_C(IC15.RESET/*4*/, RST) 1094 NET_C(IC15.CONT/*5*/, C19.1) 1095 NET_C(C19.2, GND) 1096 NET_C(IC15.DISCH/*7*/, R27.2) 1097 NET_C(R27.1, V5) 1098 NET_C(TR10.B, IC15.DISCH/*7*/) // B & C swapped, wrong in schematics 1099 NET_C(TR10.C, R68.2) // B & C swapped, wrong in schematics 1100 NET_C(TR10.E, GND) 1101 NET_C(IC23.8/*OUT3*/, IC15.TRIG/*2*/, IC15.THRESH/*6*/, C38.2) 1102 NET_C(C38.1, C37.1) 1103 NET_C(IC15.OUT/*3*/, R26.2) 1104 1105 // -------------------------------- 1106 // UPPER STAGE -> MIX 1107 C458(TR9) 1108 NE555(IC14) 1109 NET_C(GND, IC14.GND/*1*/) 1110 NET_C(V5, IC14.VCC/*8*/) 1111 RES(R62, RES_K(30)) 1112 RES(R63, RES_K(51)) 1113 RES(R64, RES_K(51)) 1114 RES(R61, RES_K(15)) 1115 RES(R25, RES_K(10)) 1116 CAP(C36, CAP_U(0.022)) 1117 CAP(C2, CAP_U(1)) // ? maybe 0.01uF 1118 NET_C(IC23.7/*OUT2*/, R62.1, R63.1) 1119 NET_C(IC23.12/*PLUS4*/, R63.2, R64.1) 1120 NET_C(R64.2, GND) 1121 NET_C(IC23.13/*MINUS4*/, R62.2, C36.1, R61.1) 1122 NET_C(IC14.RESET/*4*/, RST) 1123 NET_C(IC14.DISCH/*7*/, R25.2) 1124 NET_C(R25.1, V5) 1125 NET_C(IC14.CONT/*5*/, C2.1, R26.1) 1126 NET_C(C2.2, GND) 1127 NET_C(TR9.B, IC14.DISCH/*7*/) // B & C swapped, wrong in schematics 1128 NET_C(TR9.C, R61.2) // B & C swapped, wrong in schematics 1129 NET_C(TR9.E, GND) 1130 NET_C(IC23.14/*OUT4*/, IC14.TRIG/*2*/, IC14.THRESH/*6*/, C36.2) 1131 NET_C(IC23.14/*OUT4*/, R24.1) 1132 1133 // -------------------------------- 1134 // UNUSED PINS 1135 NC_(IC33.5/*Q2*/) 1136 1137 NET_C(IC6.OUT/*3*/, NC_IC6_OUT.1) // not connected in schematics 1138 RES(NC_IC6_OUT, RES_M(1)) 1139 NET_C(NC_IC6_OUT.2, GND) 1140 NET_C(IC14.OUT/*3*/, NC_IC14_OUT.1) // not connected in schematics 1141 RES(NC_IC14_OUT, RES_M(1)) 1142 NET_C(NC_IC14_OUT.2, GND) 1143 1144 // -------------------------------- 1145 // OUTPUT 1146 NET_C(EMAR_SOUND, C9.2) 1147 1148 1149 /* ------------------------------------------------------------------------ 1150 * WALK_SOUND 1151 * -----------------------------------------------------------------------*/ 1152 // INPUT 1153 NET_C(WALK_TRG, R140.2) 1154 1155 // -------------------------------- 1156 NE555(IC28) 1157 NET_C(GND, IC28.GND/*1*/) 1158 NET_C(V5, IC28.VCC/*8*/) 1159 1160 LM324_DIP(IC21) // shared by CRY_SOUND, WALK_SOUND, CRY_SOUND, CRY_SOUND 1161 NET_C(GND, IC21.11/*GND*/) 1162 NET_C(V12, IC21.4/*VCC*/) 1163 1164 RES(R95, RES_K(100)) 1165 RES(R96, RES_K(22)) 1166 RES(R98, RES_K(27)) 1167 RES(R137, RES_K(22)) 1168 RES(R140, RES_K(1)) 1169 CAP(C3, CAP_U(2.2)) 1170 CAP(C50, CAP_U(0.1)) 1171 CAP(C51, CAP_U(2.2)) 1172 CAP(C65, CAP_U(0.01)) 1173 CAP(C77, CAP_U(2.2)) 1174 1175 NET_C(GND, C65.2, C77.2, C50.2) 1176 NET_C(V6, IC21.5/*PLUS2*/) 1177 NET_C(V5, R140.1, R137.1) 1178 NET_C(R140.2, IC28.TRIG/*2*/) 1179 NET_C(C65.1, IC28.CONT/*5*/) 1180 NET_C(IC28.THRESH/*6*/, IC28.DISCH/*7*/, R137.2, C77.1) 1181 NET_C(IC28.OUT/*3*/ , R98.1) 1182 NET_C(R98.2, C50.1, C51.1) 1183 NET_C(C51.2, R96.1) 1184 NET_C(R96.2, R95.1, IC21.6/*MINUS2*/) 1185 NET_C(IC21.7/*OUT2*/, R95.2, C3.1) 1186 1187 // -------------------------------- 1188 // UNUSED PINS 1189 NET_C(V5, IC28.RESET/*4*/) // not connected on schematic 1190 1191 // -------------------------------- 1192 // OUTPUT 1193 NET_C(WALK_SOUND, C3.2) 1194 1195 1196 /* ------------------------------------------------------------------------ 1197 * CRY_SOUND 1198 * -----------------------------------------------------------------------*/ 1199 // INPUT 1200 NET_C(CRY_TRG, R139.2) 1201 1202 // -------------------------------- 1203 // TRG -> CON 1204 TTL_74123_DIP(IC33) // shared by CRY_SOUND, EMAR_SOUND 1205 NET_C(GND, IC33.8/*GND*/) 1206 NET_C(V5, IC33.16/*VCC*/) 1207 LM324_DIP(IC22) // shared by CRY_SOUND, EMAR_SOUND, ANIMAL_SOUND, CRY_SOUND 1208 NET_C(GND, IC22.11/*GND*/) 1209 NET_C(V12, IC22.4/*VCC*/) 1210 MA150(D2) 1211 RES(R139, RES_K(1)) 1212 RES(R138, RES_K(47)) 1213 RES(R97, 470) 1214 RES(R87, RES_K(470)) 1215 RES(R94, RES_K(470)) 1216 CAP(C64, CAP_U(1)) 1217 NET_C(V5, R139.1, R138.1, R87.1) 1218 NET_C(GND, C49.2) 1219 NET_C(R139.2, IC33.1/*A1*/) 1220 NET_C(V5, IC33.2/*B1*/, IC33.3/*CLRQ1*/) 1221 NET_C(IC33.14/*C1*/, C64.1) 1222 NET_C(IC33.15/*RC1*/, C64.2, R138.2) 1223 NET_C(IC33.4/*QQ1*/, D2.K) 1224 NC_(IC33.13/*Q1*/) 1225 NET_C(D2.A, R97.1) 1226 NET_C(R97.2, C49.1, R94.2) 1227 NET_C(IC21.3/*PLUS1*/, R87.2, R94.1) 1228 NET_C(IC21.1/*OUT1*/, IC21.2/*MINUS1*/, IC20.6/*CON2*/) 1229 1230 // -------------------------------- 1231 // CON, MIX -> OUT 1232 RES(R86, RES_K(10)) 1233 CAP(C47, CAP_U(2.2)) 1234 CAP(C49, CAP_U(1)) 1235 CAP(C28, CAP_P(680)) 1236 CAP(C27, CAP_U(2.2)) 1237 NET_C(IC21.14/*OUT4*/, R86.1) 1238 NET_C(R86.2, C47.1) 1239 NET_C(IC20.5/*IN2*/, C47.2) 1240 NET_C(IC20.10/*RO2*/, C28.1) 1241 NET_C(C28.2, GND) 1242 NET_C(IC20.11/*OUT2*/, C27.1) 1243 1244 // -------------------------------- 1245 // UPPER STAGE -> MIDDLE STAGE 1246 C458(TR7) 1247 NE555(IC12) 1248 NET_C(GND, IC12.GND/*1*/) 1249 NET_C(V5, IC12.VCC/*8*/) 1250 NET_C(RST, IC12.RESET/*4*/) 1251 RES(R22, RES_K(10)) 1252 RES(R55, RES_K(51)) 1253 RES(R54, RES_K(220)) 1254 RES(R56, RES_K(51)) 1255 RES(R53, RES_K(100)) 1256 CAP(C33, CAP_U(0.22)) 1257 CAP(C32, CAP_U(0.22)) 1258 CAP(C5, CAP_U(0.01)) 1259 NET_C(TR7.B, IC12.DISCH/*7*/) // B & C swapped, wrong in schematics 1260 NET_C(TR7.C, R53.2) // B & C swapped, wrong in schematics 1261 NET_C(TR7.E, GND) 1262 NET_C(V5, R22.1) 1263 NET_C(IC12.DISCH/*7*/, R22.2) 1264 NET_C(IC22.14/*OUT4*/, IC12.TRIG/*2*/, IC12.THRESH/*6*/) 1265 NET_C(IC22.14/*OUT4*/, C32.2) 1266 NET_C(C32.1, C33.1) 1267 NET_C(IC22.13/*MINUS4*/, R53.1, R54.2, C33.2) 1268 NET_C(IC22.12/*PLUS4*/, R55.2, R56.1) 1269 NET_C(R56.2, GND) 1270 NET_C(R54.1, R55.1, V6) 1271 NET_C(IC12.CONT/*5*/, C5.1) 1272 NET_C(C5.2, GND) 1273 1274 RES(R99, RES_K(22)) 1275 RES(R100, RES_K(100)) 1276 RES(R101, RES_K(15)) 1277 RES(R102, RES_K(33)) 1278 NET_C(IC22.14/*OUT4*/, R100.1) 1279 NET_C(IC22.1/*OUT1*/, R102.2) 1280 NET_C(IC22.2/*MINUS1*/, R100.2, R102.1) 1281 NET_C(IC22.3/*PLUS1*/, R99.2, R101.1) 1282 NET_C(R99.1, V12) 1283 NET_C(R101.2, GND) 1284 1285 // -------------------------------- 1286 // LOWER STAGE -> MIDDLE STAGE 1287 C458(TR6) 1288 NE555(IC11) 1289 NET_C(GND, IC11.GND/*1*/) 1290 NET_C(V5, IC11.VCC/*8*/) 1291 NET_C(RST, IC11.RESET/*4*/) 1292 RES(R21, RES_K(10)) 1293 RES(R49, RES_K(51)) 1294 RES(R50, RES_K(51)) 1295 RES(R51, RES_K(470)) 1296 RES(R52, RES_K(5.1)) 1297 CAP(C30, CAP_U(2.2)) 1298 CAP(C31, CAP_U(2.2)) 1299 CAP(C4, CAP_U(0.01)) 1300 NET_C(TR6.B, IC11.DISCH/*7*/) // B & C swapped, wrong in schematics 1301 NET_C(TR6.C, R52.2) // B & C swapped, wrong in schematics 1302 NET_C(TR6.E, GND) 1303 NET_C(V5, R21.1) 1304 NET_C(IC11.DISCH/*7*/, R21.2) 1305 NET_C(IC21.8/*OUT3*/, IC11.TRIG/*2*/, IC11.THRESH/*6*/) 1306 NET_C(IC21.9/*MINUS3*/, R52.1, R51.2, C30.2) 1307 NET_C(C30.1, C31.1) 1308 NET_C(IC21.8/*OUT3*/, C31.2) 1309 NET_C(IC21.10/*PLUS3*/, R50.2, R49.1) 1310 NET_C(R49.2, GND) 1311 NET_C(V6, R51.1, R50.1) 1312 NET_C(IC11.CONT/*5*/, C4.1) 1313 NET_C(C4.2, GND) 1314 NET_C(IC21.8/*OUT3*/, R20.1) 1315 NET_C(IC10.CONT/*5*/, R20.2) 1316 1317 // -------------------------------- 1318 // MIDDLE STAGE -> MIX 1319 C458(TR5) 1320 NE555(IC10) 1321 NET_C(GND, IC10.GND/*1*/) 1322 NET_C(V5, IC10.VCC/*8*/) 1323 NET_C(RST, IC10.RESET/*4*/) 1324 RES(R19, RES_K(10)) 1325 RES(R45, RES_K(15)) 1326 RES(R46, RES_K(30)) 1327 RES(R47, RES_K(51)) 1328 RES(R48, RES_K(51)) 1329 CAP(C29, CAP_U(0.022)) 1330 RES(R20, RES_K(1)) 1331 1332 NET_C(TR5.B, IC10.DISCH/*7*/) // B & C swapped, wrong in schematics 1333 NET_C(TR5.C, R45.2) // B & C swapped, wrong in schematics 1334 NET_C(TR5.E, GND) 1335 NET_C(V5, R19.1) 1336 NET_C(IC10.DISCH/*7*/, R19.2) 1337 NET_C(IC21.14/*OUT4*/, IC10.TRIG/*2*/, IC10.THRESH/*6*/) 1338 NET_C(IC21.13/*MINUS4*/, R45.1, R46.2, C29.1) 1339 NET_C(IC21.12/*PLUS4*/, R47.2, R48.1) 1340 NET_C(R48.2, GND) 1341 NET_C(IC22.1/*OUT1*/, R46.1, R47.1) 1342 NET_C(IC21.14/*OUT4*/, C29.2) 1343 1344 // -------------------------------- 1345 // UNUSED PINS 1346 NET_C(IC10.OUT/*3*/, NC_IC10_OUT.1) // not connected in schematics 1347 RES(NC_IC10_OUT, RES_M(1)) 1348 NET_C(NC_IC10_OUT.2, GND) 1349 NET_C(IC11.OUT/*3*/, NC_IC11_OUT.1) // not connected in schematics 1350 RES(NC_IC11_OUT, RES_M(1)) 1351 NET_C(NC_IC11_OUT.2, GND) 1352 NET_C(IC12.OUT/*3*/, NC_IC12_OUT.1) // not connected in schematics 1353 RES(NC_IC12_OUT, RES_M(1)) 1354 NET_C(NC_IC12_OUT.2, GND) 1355 1356 // -------------------------------- 1357 // OUTPUT 1358 NET_C(CRY_SOUND, C27.2) 1359 1360 NETLIST_END() 1361 1362 1363 1364 1365 static NETLIST_START(brdrline_sound_out) 1366 LM324_DIP(IC38) // shared by HIT_SOUND, SOUND_OUT, POINT_SOUND, POINT_SOUND 1367 NET_C(GND, IC38.11/*GND*/) 1368 NET_C(V12, IC38.4/*VCC*/) 1369 1370 POT(VR8, RES_K(200)) 1371 POT(VR1, RES_K(200)) 1372 POT(VR6, RES_K(200)) 1373 POT(VR7, RES_K(200)) 1374 POT(VR5, RES_K(500)) 1375 POT(VR4, RES_K(200)) 1376 POT(VR3, RES_K(200)) 1377 POT(VR2, RES_K(200)) 1378 1379 PARAM(VR1.DIAL, 0.350) // GUN_SOUND 1380 PARAM(VR8.DIAL, 0.000) // JEEP_SOUND 1381 PARAM(VR6.DIAL, 0.985) // POINT_SOUND 1382 PARAM(VR7.DIAL, 0.640) // HIT_SOUND 1383 PARAM(VR5.DIAL, 0.960) // ANIMAL_SOUND 1384 PARAM(VR4.DIAL, 0.900) // EMAR_SOUND 1385 PARAM(VR3.DIAL, 0.000) // WALK_SOUND 1386 PARAM(VR2.DIAL, 0.900) // CRY_SOUND 1387 1388 RES(R8, RES_K(22)) 1389 RES(R1, RES_K(22)) 1390 RES(R6, RES_K(22)) 1391 RES(R7, RES_K(22)) 1392 RES(R5, RES_K(22)) 1393 RES(R4, RES_K(22)) 1394 RES(R3, RES_K(22)) 1395 RES(R2, RES_K(22)) 1396 RES(R167, RES_K(10)) 1397 1398 CAP(C76, CAP_U(10)) 1399 1400 NET_C(VR8.1, VR8.2) 1401 NET_C(VR1.1, VR1.2) 1402 NET_C(VR6.1, VR6.2) 1403 NET_C(VR7.1, VR7.2) 1404 NET_C(VR5.1, VR5.2) 1405 NET_C(VR4.1, VR4.2) 1406 NET_C(VR3.1, VR3.2) 1407 NET_C(VR2.1, VR2.2) 1408 1409 NET_C(VR8.3, R8.1) 1410 NET_C(VR1.3, R1.1) 1411 NET_C(VR6.3, R6.1) 1412 NET_C(VR7.3, R7.1) 1413 NET_C(VR5.3, R5.1) 1414 NET_C(VR4.3, R4.1) 1415 NET_C(VR3.3, R3.1) 1416 NET_C(VR2.3, R2.1) 1417 1418 NET_C(R1.2, R2.2, R3.2, R4.2, R5.2, R6.2, R7.2, R8.2 1419 , IC38.6/*MINUS2*/ 1420 , R167.1 1421 ) 1422 NET_C(V6, IC38.5/*PLUS2*/) 1423 NET_C(IC38.7/*OUT2*/, R167.2, C76.1) 1424 1425 // -------------------------------- 1426 // INPUT 1427 #if (ENABLE_FRONTIERS) 1428 // using AFUNCs here tends to remove the DC bias, so add 1429 // it back in manually 1430 AFUNC(JEEP_F, 1, "5+A0") 1431 ALIAS(JEEP_SOUND, JEEP_F.A0) 1432 NET_C(JEEP_F.Q, VR8.1) 1433 1434 AFUNC(GUN_F, 1, "6+A0") 1435 ALIAS(GUN_SOUND, GUN_F.A0) 1436 NET_C(GUN_F.Q, VR1.1) 1437 1438 AFUNC(POINT_F, 1, "6+A0") 1439 ALIAS(POINT_SOUND, POINT_F.A0) 1440 NET_C(POINT_F.Q, VR6.1) 1441 1442 AFUNC(HIT_F, 1, "6+A0") 1443 ALIAS(HIT_SOUND, HIT_F.A0) 1444 NET_C(HIT_F.Q, VR7.1) 1445 1446 AFUNC(ANIMAL_F, 1, "6+A0") 1447 ALIAS(ANIMAL_SOUND, ANIMAL_F.A0) 1448 NET_C(ANIMAL_F.Q, VR5.1) 1449 1450 AFUNC(EMAR_F, 1, "6+A0") 1451 ALIAS(EMAR_SOUND, EMAR_F.A0) 1452 NET_C(EMAR_F.Q, VR4.1) 1453 1454 AFUNC(WALK_F, 1, "A0") 1455 ALIAS(WALK_SOUND, WALK_F.A0) 1456 NET_C(WALK_F.Q, VR3.1) 1457 1458 AFUNC(CRY_F, 1, "6+A0") 1459 ALIAS(CRY_SOUND, CRY_F.A0) 1460 NET_C(CRY_F.Q, VR2.1) 1461 #else 1462 ALIAS(JEEP_SOUND, VR8.1) 1463 ALIAS(GUN_SOUND, VR1.1) 1464 ALIAS(POINT_SOUND, VR6.1) 1465 ALIAS(HIT_SOUND, VR7.1) 1466 ALIAS(ANIMAL_SOUND, VR5.1) 1467 ALIAS(EMAR_SOUND, VR4.1) 1468 ALIAS(WALK_SOUND, VR3.1) 1469 ALIAS(CRY_SOUND, VR2.1) 1470 #endif 1471 1472 // -------------------------------- 1473 // OUTPUT 1474 RES(Rsound, RES_K(1)) // dummy load 1475 NET_C(C76.2, Rsound.1) 1476 NET_C(GND, Rsound.2) 1477 #if 0 1478 // for test only 1479 AFUNC(CLIPPING, 1, "max(-0.11,min(0.11, A0))") 1480 NET_C(C76.2, CLIPPING.A0) 1481 #else 1482 ALIAS(SOUND_OUT, Rsound.1) 1483 #endif 1484 1485 NETLIST_END() 1486 1487 1488 1489 1490 NETLIST_START(brdrline) 1491 1492 #if 1 1493 SOLVER(Solver, 1000) 1494 PARAM(Solver.DYNAMIC_TS, 1) 1495 PARAM(Solver.DYNAMIC_MIN_TIMESTEP, 4e-5) 1496 #else 1497 SOLVER(solver, 48000) 1498 #endif 1499 1500 LOCAL_SOURCE(_MB4391) 1501 LOCAL_SOURCE(_MB4391_DIP) 1502 1503 LOCAL_SOURCE(brdrline_schematics) 1504 LOCAL_SOURCE(brdrline_sound_out) 1505 1506 // -------------------------------- 1507 // VOLTAGE SOURCES 1508 ANALOG_INPUT(V12, 12) 1509 ANALOG_INPUT(V5, 5) 1510 ANALOG_INPUT(V6, 6) 1511 1512 // -------------------------------- 1513 INCLUDE(brdrline_schematics) 1514 1515 // -------------------------------- 1516 TTL_INPUT(I_SOUND_0, 1) // active low 1517 NET_C(GND, I_SOUND_0.GND) 1518 NET_C(V5, I_SOUND_0.VCC) 1519 1520 TTL_INPUT(I_SOUND_1, 1) // active low 1521 NET_C(GND, I_SOUND_1.GND) 1522 NET_C(V5, I_SOUND_1.VCC) 1523 1524 TTL_INPUT(I_SOUND_2, 1) // active low 1525 NET_C(GND, I_SOUND_2.GND) 1526 NET_C(V5, I_SOUND_2.VCC) 1527 1528 TTL_INPUT(I_SOUND_3, 1) // active low 1529 NET_C(GND, I_SOUND_3.GND) 1530 NET_C(V5, I_SOUND_3.VCC) 1531 1532 TTL_INPUT(I_SOUND_4, 1) // active low 1533 NET_C(GND, I_SOUND_4.GND) 1534 NET_C(V5, I_SOUND_4.VCC) 1535 1536 TTL_INPUT(I_SOUND_5, 1) // active low 1537 NET_C(GND, I_SOUND_5.GND) 1538 NET_C(V5, I_SOUND_5.VCC) 1539 1540 TTL_INPUT(I_SOUND_6, 1) // active low 1541 NET_C(GND, I_SOUND_6.GND) 1542 NET_C(V5, I_SOUND_6.VCC) 1543 1544 TTL_INPUT(I_SOUND_7, 1) // active low 1545 NET_C(GND, I_SOUND_7.GND) 1546 NET_C(V5, I_SOUND_7.VCC) 1547 1548 1549 #if 1 1550 // {---(A5)Logic Board---}{-(C1/2)Top-}{-Sound Board-} 1551 // D0 -> LS374( 3- 2) -> 40 -> PNK -> 9 -> ANIMAL_TRG 1552 // D1 -> LS374(18-19) -> 35 -> BRN -> 12 -> CRY_TRG 1553 // D2 -> LS374( 4- 5) -> 33 -> ORN -> 11 -> WALK_TRG 1554 // D3 -> LS374(17-16) -> 34 -> YEL -> 10 -> EMAR_TRG 1555 // D4 -> LS374( 7- 6) -> 32 -> BLU -> 8 -> HIT_TRG 1556 // D5 -> LS374(14-15) -> 31 -> GRY -> 7 -> POINT_TRG 1557 // D6 -> LS374( 8- 9) -> 30 -> WHT -> 6 -> JEEP_ON 1558 // D7 -> LS374(13-12) -> 29 -> GRN -> 5 -> GUN_TRG 1559 ALIAS(GUN_TRG, I_SOUND_7.Q) 1560 ALIAS(JEEP_ON, I_SOUND_6.Q) 1561 ALIAS(POINT_TRG, I_SOUND_5.Q) 1562 ALIAS(HIT_TRG, I_SOUND_4.Q) 1563 ALIAS(ANIMAL_TRG, I_SOUND_0.Q) 1564 ALIAS(EMAR_TRG, I_SOUND_3.Q) 1565 ALIAS(WALK_TRG, I_SOUND_2.Q) 1566 ALIAS(CRY_TRG, I_SOUND_1.Q) 1567 #else 1568 /* 1569 * 2020-10-06 by 'beta-tester' 1570 * | | ||personal |personal | 1571 * | | ||assignment |assignment | 1572 * |brdrline |starrkr ||NL SOUND |plausibility |note 1573 * ---+-------------------------+------------------++-------------+-------------+---- 1574 * D0 | |fire, jeep_field ||POINT_TRG.IN | | 1575 * D1 |next_sector, hit_rocket2 |hit_animal ||HIT_TRG.IN |+ | 1576 * D2 | |fire, next_sector ||WALK_TRG.IN | | 1577 * D3 | |fire ||CRY_TRG.IN | | 1578 * D4 |jeep_field | ||ANIMAL_TRG.IN|+++ |see note 1 1579 * D5 |fire | ||GUN_TRG.IN |++ | 1580 * D6 |jeep_path |jeep_path? ||JEEP_ON.IN |++ | 1581 * D7 |hit_animal | ||EMAR_TRG.IN |+ | 1582 * 1583 * note 1: as far as i remember (from the early 1980'th) it was triggered more often while crawling through the field at sector2 & 3, 1584 * issue in schematic/netlist? 1585 * or trigger? 1586 * or were the acrade what i played in the past a modified bootleg? 1587 * or is it only in my head? 1588 */ 1589 ALIAS(GUN_TRG, I_SOUND_5.Q) 1590 ALIAS(JEEP_ON, I_SOUND_6.Q) 1591 ALIAS(POINT_TRG, I_SOUND_0.Q) 1592 ALIAS(HIT_TRG, I_SOUND_1.Q) 1593 ALIAS(ANIMAL_TRG, I_SOUND_4.Q) 1594 ALIAS(EMAR_TRG, I_SOUND_7.Q) 1595 ALIAS(WALK_TRG, I_SOUND_2.Q) 1596 ALIAS(CRY_TRG, I_SOUND_3.Q) 1597 #endif 1598 1599 // -------------------------------- 1600 INCLUDE(brdrline_sound_out) 1601 1602 1603 // -------------------------------- 1604 ALIAS(OUTPUT, SOUND_OUT) 1605 1606 NETLIST_END() 1607 1608 1609 1610 1611 #if 0 1612 ~/mame/src/lib/netlist/devices/nld_ne555.cpp 1613 NE555() 1614 * +--------------+ 1615 * .GND/*1*/ |1 ++ 8| .VCC/*8*/ 1616 * .TRIG/*2*/ |2 7| .DISCH/*7*/ 1617 * .OUT/*3*/ |3 6| .THRESH/*6*/ 1618 * .RESET/*4*/ |4 NE555 5| .CONT/*5*/ 1619 * +--------------+ 1620 #endif 1621 1622 #if 0 1623 ~/mame/src/lib/netlist/devices/nld_74123.cpp 1624 TTL_74123_DIP() 1625 * +--------------+ 1626 * .1/*A1*/ |1 ++ 16| .16/*VCC*/ 1627 * .2/*B1*/ |2 15| .15/*RC1*/ 1628 * .3/*CLRQ1*/ |3 14| .14/*C1*/ 1629 * .4/*QQ1*/ |4 74123 13| .13/*Q1*/ 1630 * .5/*Q2*/ |5 12| .12/*QQ2*/ 1631 * .6/*C2*/ |6 11| .11/*CLRQ2*/ 1632 * .7/*RC2*/ |7 10| .10/*B2*/ 1633 * .8/*GND*/ |8 9| .9/*A2*/ 1634 * +--------------+ 1635 #endif 1636 1637 #if 0 1638 ~/mame/src/lib/netlist/macro/nlm_opamp_lib.cpp 1639 LM324_DIP() 1640 OPAMP(A, "LM324") 1641 * +--------------+ 1642 * .1/*OUT1*/ |1 ++ 14| .14/*OUT4*/ 1643 * .2/*MINUS1*/ |2 13| .13/*MINUS4*/ 1644 * .3/*PLUS1*/ |3 12| .12/*PLUS4*/ 1645 * .4/*VCC*/ |4 11| .11/*GND*/ 1646 * .5/*PLUS2*/ |5 10| .10/*PLUS3*/ 1647 * .6/*MINUS2*/ |6 9| .9/*MINUS3*/ 1648 * .7/*OUT2*/ |7 LM324 8| .8/*OUT3*/ 1649 * +--------------+ 1650 #endif 1651 1652 #if 0 1653 WARNING: fake implementation for MB4391 based on guesses only 1654 MB4391_DIP 1655 MB4391(A) 1656 * +--------------+ 1657 * .1/*IN1*/ |1 ++ 16| .16/*VCC1*/ 1658 * .2/*CON1*/ |2 15| .15/*OUT1*/ 1659 * .3/*GND1*/ |3 14| .14/*RO1*/ 1660 * |4 MB4391 13| 1661 * .5/*IN2*/ |5 12| .12/*VCC2*/ 1662 * .6/*CON2*/ |6 11| .11/*OUT2*/ 1663 * .7/*GND2*/ |7 10| .10/*RO2*/ 1664 * |8 9| 1665 * +--------------+ 1666 #endif 1667 1668 #if 0 1669 ~/mame/src/lib/netlist/devices/nld_7474.cpp 1670 TTL_7474_DIP() - have to use pin numbers... why? 1671 * +--------------+ 1672 * .1/*CLR1*/ |1 ++ 14| .14/*VCC*/ 1673 * .2/*D1*/ |2 13| .13/*CLR2*/ 1674 * .3/*CLK1*/ |3 12| .12/*D2*/ 1675 * .4/*PR1*/ |4 7474 11| .11/*CLK2*/ 1676 * .5/*Q1*/ |5 10| .10/*PR2*/ 1677 * .6/*QQ1*/ |6 9| .9/*Q2*/ 1678 * .7/*GND*/ |7 8| .8/*QQ2*/ 1679 * +--------------+ 1680 #endif 1681 1682 #if 0 1683 ~/mame/src/lib/netlist/devices/nld_mm5837.cpp 1684 MM5837() 1685 * +--------------+ 1686 * .VDD/*1*/ |1 ++ 8| .NC 1687 * .VGG/*2*/ |2 7| .NC 1688 * .OUT/*3*/ |3 6| .NC 1689 * .VSS/*4*/ |4 MM5837 5| .NC 1690 * +--------------+ 1691 #endif 1692 1693 #if 0 1694 ~/mame/src/lib/netlist/macro/nlm_ttl74xx_lib.cpp 1695 TTL_7408_DIP() 1696 TTL_7408_AND(A) 1697 * +--------------+ 1698 * .1/*A1*/ |1 ++ 14| .14/*VCC*/ 1699 * .2/*B1*/ |2 13| .13/*B4*/ 1700 * .3/*Q1*/ |3 12| .12/*A4*/ 1701 * .4/*A2*/ |4 7408 11| .11/*Q4*/ 1702 * .5/*B2*/ |5 10| .10/*B3*/ 1703 * .6/*Q2*/ |6 9| .9/*A3*/ 1704 * .7/*GND*/ |7 8| .8/*Q3*/ 1705 * +--------------+ 1706 #endif 1707 1708 #if 0 1709 TTL_7416_DIP() 1710 TTL_7416_GATE(A) 1711 * +--------------+ 1712 * .1/*A1*/ |1 ++ 14| .14/*VCC*/ 1713 * .2/*Q1*/ |2 13| .13/*A6*/ 1714 * .3/*A2*/ |3 12| .12/*Q6*/ 1715 * .4/*Q2*/ |4 7416 11| .11/*A5*/ 1716 * .5/*A3*/ |5 10| .10/*Q5*/ 1717 * .6/*Q3*/ |6 9| .9/*A4*/ 1718 * .7/*GND*/ |7 8| .8/*Q4*/ 1719 * +--------------+ 1720 #endif 1721 1722