void portInit( void ) { // Init all needed modules ******************************************************************** initPin( PTB5, 0x1u, 0x1u ); // PIN FOR SPEAKER IS NOT CONNECTED; INIT WITH PULLUP initPin( OUTPUT_PIN( PIN_LED0 ), 0x1u, 0 ); // red LED initPin( OUTPUT_PIN( PIN_LED1 ), 0x1u, 0 ); // yellow LED initPin( OUTPUT_PIN( PIN_LED2 ), 0x1u, 0 ); // green LED initPin( OUTPUT_PIN( PIN_LED3 ), 0x1u, 0 ); // 'orange' LED //initPin( PIN_IRQ_TAS0, 0x1u, 0x1u ); // PIN // SET ALL LEDS OFF BY DEFAULT (LOW-ACTIVE) SET_PIN_HIGH( PIN_LED0 ); SET_PIN_HIGH( PIN_LED1 ); SET_PIN_HIGH( PIN_LED2 ); SET_PIN_HIGH( PIN_LED3 ); }
int x = 2*pin[i2] + pin[i1]; pin[6] = (*d_l)[y][x]; } static CHIP_LOGIC( inv ) { pin[5] = pin[6] ^ 1; } static CHIP_DESC( DIODE_MATRIX_CUSTOM ) = { CHIP_START( diode_matrix_custom_n ) INPUT_PINS( i1, i2, i3, i4, i5 ) OUTPUT_PIN( 6 ) OUTPUT_DELAY_NS( 35.0, 36.0 ), CHIP_START( inv ) INPUT_PINS( 6 ) OUTPUT_PIN( 5 ) OUTPUT_DELAY_NS( 7.0, 7.0 ), CHIP_DESC_END }; CIRCUIT_LAYOUT( tvbasketball ) /************************************************************************** Chips
uint64_t delay = uint64_t(100.0e-3 * r / Circuit::timescale); chip->pending_event = chip->circuit->queue_push(chip, delay); } } static CHIP_LOGIC( RANDOM_CLOCK_BUF ) { pin[i1] = pin[1]; } static CHIP_DESC( RANDOM_CLOCK_GEN ) = { CUSTOM_CHIP_START( &RANDOM_CLOCK_GEN ) INPUT_PINS( i1 ) OUTPUT_PIN( 1 ), CHIP_START( RANDOM_CLOCK_BUF ) INPUT_PINS( 1 ) OUTPUT_PIN( i1 ) OUTPUT_DELAY_NS( 1.0, 1.0 ), CHIP_DESC_END }; static INPUT_DESC( antiaircraft ) INPUT_INFO(BUTTONS1_INPUT, {{ 1, 2, 3 }}, "Fire Left Cannon") INPUT_INFO(BUTTONS2_INPUT, {{ 1, 2, 3 }}, "Fire Right Cannon") INPUT_INFO(COIN_INPUT, {{ 1 }}, "Insert Coin") INPUT_INFO(START_INPUT, {{ 1 }}, "Start Game") INPUT_DESC_END