1 // license:BSD-3-Clause 2 // copyright-holders:Derrick Renaud, Roberto Fresca 3 /************************************************************************ 4 * Noraut/Kimble/Kramer Poker Sound System Analog emulation 5 * Sept 2009, Derrick Renaud & Roberto Fresca. 6 ************************************************************************/ 7 8 #include "emu.h" 9 #include "includes/norautp.h" 10 11 12 /* Discrete Sound Input Nodes */ 13 /* defined in norautp.h */ 14 15 16 static const discrete_555_desc desc_norautp_555 = 17 { 18 DISC_555_OUT_ENERGY | DISC_555_OUT_AC, 19 5, // B+ voltage of 555 20 DEFAULT_555_VALUES 21 }; 22 23 24 #define NORAUTP_SOUND_CIRCUIT(_name, _r1, _r2, _c1, _c2, _c3, _c4) \ 25 static const discrete_comp_adder_table desc_##_name##_caps = \ 26 { \ 27 DISC_COMP_P_CAPACITOR, _c4, 3, \ 28 { \ 29 _c3, _c2, _c1 \ 30 } \ 31 }; \ 32 \ 33 DISCRETE_SOUND_START( _name##_discrete ) \ 34 /************************************************ \ 35 * Input register mapping \ 36 ************************************************/ \ 37 DISCRETE_INPUT_LOGIC(NORAUTP_SND_EN) \ 38 DISCRETE_INPUT_DATA (NORAUTP_FREQ_DATA) \ 39 \ 40 /************************************************ \ 41 * Tone Generator \ 42 ************************************************/ \ 43 DISCRETE_COMP_ADDER(NODE_20, NORAUTP_FREQ_DATA, &desc_##_name##_caps) \ 44 DISCRETE_555_ASTABLE(NODE_21, \ 45 NORAUTP_SND_EN, /* RESET */ \ 46 _r2, _r1, NODE_20, &desc_norautp_555) \ 47 \ 48 DISCRETE_OUTPUT(NODE_21, 65000.0/3.8) \ 49 DISCRETE_SOUND_END 50 51 52 /***** Noraut Poker *****/ 53 54 /* Parts List - Resistors */ 55 #define NORAUTP_R1 RES_K(120) 56 #define NORAUTP_R2 RES_K(2.2) 57 58 /* Parts List - Capacitors */ 59 #define NORAUTP_C1 CAP_U(.01) 60 #define NORAUTP_C2 CAP_U(.022) 61 #define NORAUTP_C3 CAP_U(.047) 62 #define NORAUTP_C4 CAP_U(.01) 63 64 NORAUTP_SOUND_CIRCUIT(norautp, 65 NORAUTP_R1, NORAUTP_R2, 66 NORAUTP_C1, NORAUTP_C2, NORAUTP_C3, NORAUTP_C4) 67 68 69 /***** Draw Poker HI-LO *****/ 70 71 /* Parts List - Resistors */ 72 #define DPHL_R1 RES_K(120) 73 #define DPHL_R2 RES_K(1) 74 75 /* Parts List - Capacitors */ 76 #define DPHL_C1 CAP_U(.01) 77 #define DPHL_C2 CAP_U(.022) 78 #define DPHL_C3 CAP_U(.05) 79 #define DPHL_C4 CAP_U(.01) 80 81 NORAUTP_SOUND_CIRCUIT(dphl, 82 DPHL_R1, DPHL_R2, 83 DPHL_C1, DPHL_C2, DPHL_C3, DPHL_C4) 84 85 86 /***** Kimble Double HI-LO *****/ 87 88 /* Parts List - Resistors */ 89 #define KIMBLE_R1 RES_K(100) 90 #define KIMBLE_R2 RES_K(1) 91 92 /* Parts List - Capacitors */ 93 #define KIMBLE_C1 CAP_U(.01) 94 #define KIMBLE_C2 CAP_U(.022) 95 #define KIMBLE_C3 CAP_U(.047) 96 #define KIMBLE_C4 CAP_U(.01) 97 98 NORAUTP_SOUND_CIRCUIT(kimble, 99 KIMBLE_R1, KIMBLE_R2, 100 KIMBLE_C1, KIMBLE_C2, KIMBLE_C3, KIMBLE_C4) 101