src/mess/machine/aim65.c
| r14129 | r14130 | |
| 5 | 5 | ******************************************************************************/ |
| 6 | 6 | |
| 7 | 7 | |
| 8 | | #include "emu.h" |
| 9 | 8 | #include "includes/aim65.h" |
| 10 | 9 | |
| 11 | | /* Peripheral chips */ |
| 12 | | #include "machine/6821pia.h" |
| 13 | | #include "machine/6522via.h" |
| 14 | 10 | |
| 15 | | /* DL1416A display chip */ |
| 16 | | #include "video/dl1416.h" |
| 17 | | |
| 18 | | /* M6502 main CPU */ |
| 19 | | #include "cpu/m6502/m6502.h" |
| 20 | | |
| 21 | | #include "machine/ram.h" |
| 22 | | |
| 23 | | |
| 24 | 11 | /****************************************************************************** |
| 25 | | Global variables |
| 26 | | ******************************************************************************/ |
| 27 | | |
| 28 | | |
| 29 | | |
| 30 | | |
| 31 | | |
| 32 | | /****************************************************************************** |
| 33 | 12 | Interrupt handling |
| 34 | 13 | ******************************************************************************/ |
| 35 | 14 | |
| r14129 | r14130 | |
| 81 | 60 | } |
| 82 | 61 | |
| 83 | 62 | |
| 84 | | WRITE8_DEVICE_HANDLER(aim65_pia_a_w) |
| 63 | WRITE8_MEMBER( aim65_state::aim65_pia_a_w ) |
| 85 | 64 | { |
| 86 | | aim65_state *state = device->machine().driver_data<aim65_state>(); |
| 87 | | state->m_pia_a = data; |
| 88 | | aim65_pia(device->machine()); |
| 65 | m_pia_a = data; |
| 66 | aim65_pia(machine()); |
| 89 | 67 | } |
| 90 | 68 | |
| 91 | 69 | |
| 92 | | WRITE8_DEVICE_HANDLER(aim65_pia_b_w) |
| 70 | WRITE8_MEMBER( aim65_state::aim65_pia_b_w ) |
| 93 | 71 | { |
| 94 | | aim65_state *state = device->machine().driver_data<aim65_state>(); |
| 95 | | state->m_pia_b = data; |
| 96 | | aim65_pia(device->machine()); |
| 72 | m_pia_b = data; |
| 73 | aim65_pia(machine()); |
| 97 | 74 | } |
| 98 | 75 | |
| 99 | 76 | |
| r14129 | r14130 | |
| 129 | 106 | ******************************************************************************/ |
| 130 | 107 | |
| 131 | 108 | |
| 132 | | READ8_DEVICE_HANDLER(aim65_riot_b_r) |
| 109 | READ8_MEMBER( aim65_state::aim65_riot_b_r ) |
| 133 | 110 | { |
| 134 | | aim65_state *state = device->machine().driver_data<aim65_state>(); |
| 135 | 111 | static const char *const keynames[] = |
| 136 | 112 | { |
| 137 | 113 | "keyboard_0", "keyboard_1", "keyboard_2", "keyboard_3", |
| 138 | 114 | "keyboard_4", "keyboard_5", "keyboard_6", "keyboard_7" |
| 139 | 115 | }; |
| 140 | 116 | |
| 141 | | int row, data = 0xff; |
| 117 | UINT8 row, data = 0xff; |
| 142 | 118 | |
| 143 | 119 | /* scan keyboard rows */ |
| 144 | 120 | for (row = 0; row < 8; row++) |
| 145 | 121 | { |
| 146 | | if (!(state->m_riot_port_a & (1 << row))) |
| 147 | | data &= input_port_read(device->machine(), keynames[row]); |
| 122 | if (!BIT(m_riot_port_a, row)) |
| 123 | data &= input_port_read(machine(), keynames[row]); |
| 148 | 124 | } |
| 149 | 125 | |
| 150 | 126 | return data; |
| 151 | 127 | } |
| 152 | 128 | |
| 153 | 129 | |
| 154 | | WRITE8_DEVICE_HANDLER(aim65_riot_a_w) |
| 130 | WRITE8_MEMBER( aim65_state::aim65_riot_a_w ) |
| 155 | 131 | { |
| 156 | | aim65_state *state = device->machine().driver_data<aim65_state>(); |
| 157 | | state->m_riot_port_a = data; |
| 132 | m_riot_port_a = data; |
| 158 | 133 | } |
| 159 | 134 | |
| 160 | 135 | |
| 161 | | WRITE_LINE_DEVICE_HANDLER(aim65_riot_irq) |
| 162 | | { |
| 163 | | cputag_set_input_line(device->machine(), "maincpu", M6502_IRQ_LINE, state ? HOLD_LINE : CLEAR_LINE); |
| 164 | | } |
| 165 | 136 | |
| 166 | | |
| 167 | | |
| 168 | 137 | /*************************************************************************** |
| 169 | 138 | DRIVER INIT |
| 170 | 139 | ***************************************************************************/ |
src/mess/video/aim65.c
| r14129 | r14130 | |
| 5 | 5 | |
| 6 | 6 | ******************************************************************************/ |
| 7 | 7 | |
| 8 | | #include "emu.h" |
| 9 | | |
| 10 | 8 | #include "includes/aim65.h" |
| 11 | | #include "machine/6522via.h" |
| 12 | 9 | |
| 13 | | |
| 14 | | |
| 15 | 10 | //UINT16 *printerRAM; |
| 16 | 11 | |
| 17 | 12 | |
| r14129 | r14130 | |
| 37 | 32 | */ |
| 38 | 33 | |
| 39 | 34 | |
| 40 | | static void aim65_printer_inc(aim65_state *state) |
| 35 | static TIMER_CALLBACK(aim65_printer_timer) |
| 41 | 36 | { |
| 37 | aim65_state *state = machine.driver_data<aim65_state>(); |
| 38 | via6522_device *via_0 = machine.device<via6522_device>("via6522_0"); |
| 39 | |
| 40 | via_0->write_cb1(state->m_printer_level); |
| 41 | via_0->write_cb1(!state->m_printer_level); |
| 42 | state->m_printer_level ^= 1; |
| 43 | |
| 42 | 44 | if (state->m_printer_dir) |
| 43 | 45 | { |
| 44 | | if (state->m_printer_x > 0) { |
| 46 | if (state->m_printer_x > 0) |
| 45 | 47 | state->m_printer_x--; |
| 46 | | } |
| 47 | | else { |
| 48 | else |
| 49 | { |
| 48 | 50 | state->m_printer_dir = 0; |
| 49 | 51 | state->m_printer_x++; |
| 50 | 52 | state->m_printer_y++; |
| r14129 | r14130 | |
| 52 | 54 | } |
| 53 | 55 | else |
| 54 | 56 | { |
| 55 | | if (state->m_printer_x < 9) { |
| 57 | if (state->m_printer_x < 9) |
| 56 | 58 | state->m_printer_x++; |
| 57 | | } |
| 58 | | else { |
| 59 | else |
| 60 | { |
| 59 | 61 | state->m_printer_dir = 1; |
| 60 | 62 | state->m_printer_x--; |
| 61 | 63 | state->m_printer_y++; |
| r14129 | r14130 | |
| 68 | 70 | state->m_flag_b=0; |
| 69 | 71 | } |
| 70 | 72 | |
| 71 | | static void aim65_printer_cr(aim65_state *state) |
| 72 | | { |
| 73 | | state->m_printer_x=0; |
| 74 | | state->m_printer_y++; |
| 75 | | if (state->m_printer_y > 500) state->m_printer_y = 0; |
| 76 | | state->m_flag_a=state->m_flag_b=0; |
| 77 | | } |
| 78 | 73 | |
| 79 | | static TIMER_CALLBACK(aim65_printer_timer) |
| 74 | WRITE8_MEMBER( aim65_state::aim65_printer_on ) |
| 80 | 75 | { |
| 81 | | aim65_state *state = machine.driver_data<aim65_state>(); |
| 82 | | via6522_device *via_0 = machine.device<via6522_device>("via6522_0"); |
| 83 | | |
| 84 | | via_0->write_cb1(state->m_printer_level); |
| 85 | | via_0->write_cb1(!state->m_printer_level); |
| 86 | | state->m_printer_level = !state->m_printer_level; |
| 87 | | aim65_printer_inc(state); |
| 88 | | } |
| 89 | | |
| 90 | | |
| 91 | | WRITE8_DEVICE_HANDLER( aim65_printer_on ) |
| 92 | | { |
| 93 | | aim65_state *state = device->machine().driver_data<aim65_state>(); |
| 94 | | via6522_device *via_0 = device->machine().device<via6522_device>("via6522_0"); |
| 76 | via6522_device *via_0 = machine().device<via6522_device>("via6522_0"); |
| 95 | 77 | if (!data) |
| 96 | 78 | { |
| 97 | | aim65_printer_cr(state); |
| 98 | | state->m_print_timer->adjust(attotime::zero, 0, attotime::from_usec(10)); |
| 79 | m_printer_x=0; |
| 80 | m_printer_y++; |
| 81 | if (m_printer_y > 500) m_printer_y = 0; |
| 82 | m_flag_a = m_flag_b=0; |
| 99 | 83 | via_0->write_cb1(0); |
| 100 | | state->m_printer_level = 1; |
| 84 | //m_print_timer->adjust(attotime::zero, 0, attotime::from_usec(10)); |
| 85 | m_printer_level = 1; |
| 101 | 86 | } |
| 102 | 87 | else |
| 103 | | state->m_print_timer->reset(); |
| 88 | { |
| 89 | m_print_timer->reset(); |
| 90 | } |
| 104 | 91 | } |
| 105 | 92 | |
| 106 | 93 | |
| 107 | | WRITE8_DEVICE_HANDLER( aim65_printer_data_a ) |
| 94 | WRITE8_MEMBER( aim65_state::aim65_printer_data_a ) |
| 108 | 95 | { |
| 109 | 96 | #if 0 |
| 110 | | aim65_state *state = device->machine().driver_data<aim65_state>(); |
| 111 | | if (state->m_flag_a == 0) { |
| 112 | | printerRAM[(state->m_printer_y * 20) + state->m_printer_x] |= data; |
| 113 | | state->m_flag_a = 1; |
| 97 | if (m_flag_a == 0) |
| 98 | { |
| 99 | printerRAM[(m_printer_y * 20) + m_printer_x] |= data; |
| 100 | m_flag_a = 1; |
| 114 | 101 | } |
| 115 | 102 | #endif |
| 116 | 103 | } |
| 117 | 104 | |
| 118 | | WRITE8_DEVICE_HANDLER( aim65_printer_data_b ) |
| 105 | WRITE8_MEMBER( aim65_state::aim65_printer_data_b ) |
| 119 | 106 | { |
| 120 | 107 | #if 0 |
| 121 | | aim65_state *state = device->machine().driver_data<aim65_state>(); |
| 122 | 108 | data &= 0x03; |
| 123 | 109 | |
| 124 | | if (state->m_flag_b == 0) { |
| 125 | | printerRAM[(state->m_printer_y * 20) + state->m_printer_x ] |= (data << 8); |
| 126 | | state->m_flag_b = 1; |
| 110 | if (m_flag_b == 0) |
| 111 | { |
| 112 | printerRAM[(m_printer_y * 20) + m_printer_x ] |= (data << 8); |
| 113 | m_flag_b = 1; |
| 127 | 114 | } |
| 128 | 115 | #endif |
| 129 | 116 | } |
| r14129 | r14130 | |
| 137 | 124 | videoram_size = 600 * 10 * 2; |
| 138 | 125 | printerRAM = auto_alloc_array(machine, UINT16, videoram_size / 2); |
| 139 | 126 | memset(printerRAM, 0, videoram_size); |
| 127 | VIDEO_START_CALL(generic); |
| 128 | #endif |
| 140 | 129 | state->m_printer_x = 0; |
| 141 | 130 | state->m_printer_y = 0; |
| 142 | 131 | state->m_printer_dir = 0; |
| 143 | | state->m_flag_a=0; |
| 144 | | state->m_flag_b=0; |
| 145 | | |
| 146 | | |
| 132 | state->m_flag_a = 0; |
| 133 | state->m_flag_b = 0; |
| 147 | 134 | state->m_printer_level = 0; |
| 148 | | |
| 149 | | VIDEO_START_CALL(generic); |
| 150 | | #endif |
| 151 | 135 | } |
| 152 | 136 | |
| 153 | 137 | |
| r14129 | r14130 | |
| 155 | 139 | SCREEN_UPDATE( aim65 ) |
| 156 | 140 | { |
| 157 | 141 | /* Display printer output */ |
| 158 | | #if 0 |
| 159 | 142 | dir = 1; |
| 160 | 143 | for(y = 0; y<500;y++) |
| 161 | 144 | { |
| r14129 | r14130 | |
| 182 | 165 | else |
| 183 | 166 | dir = 0; |
| 184 | 167 | } |
| 185 | | #endif |
| 186 | | |
| 187 | 168 | return 0; |
| 188 | 169 | } |
| 189 | 170 | #endif |
| 190 | | |
src/mess/includes/aim65.h
| r14129 | r14130 | |
| 9 | 9 | #ifndef AIM65_H_ |
| 10 | 10 | #define AIM65_H_ |
| 11 | 11 | |
| 12 | #include "emu.h" |
| 13 | #include "cpu/m6502/m6502.h" |
| 14 | #include "video/dl1416.h" |
| 12 | 15 | #include "machine/6522via.h" |
| 16 | #include "machine/6532riot.h" |
| 17 | #include "machine/6821pia.h" |
| 18 | #include "imagedev/cartslot.h" |
| 19 | #include "machine/ram.h" |
| 13 | 20 | |
| 14 | | |
| 15 | 21 | /** R6502 Clock. |
| 16 | 22 | * |
| 17 | 23 | * The R6502 on AIM65 operates at 1 MHz. The frequency reference is a 4 MHz |
| r14129 | r14130 | |
| 27 | 33 | aim65_state(const machine_config &mconfig, device_type type, const char *tag) |
| 28 | 34 | : driver_device(mconfig, type, tag) { } |
| 29 | 35 | |
| 36 | DECLARE_WRITE8_MEMBER(aim65_pia_a_w); |
| 37 | DECLARE_WRITE8_MEMBER(aim65_pia_b_w); |
| 38 | DECLARE_READ8_MEMBER(aim65_riot_b_r); |
| 39 | DECLARE_WRITE8_MEMBER(aim65_riot_a_w); |
| 40 | DECLARE_WRITE8_MEMBER(aim65_printer_data_a); |
| 41 | DECLARE_WRITE8_MEMBER(aim65_printer_data_b); |
| 42 | DECLARE_WRITE8_MEMBER(aim65_printer_on); |
| 30 | 43 | UINT8 m_pia_a; |
| 31 | 44 | UINT8 m_pia_b; |
| 32 | 45 | UINT8 m_riot_port_a; |
| 46 | emu_timer *m_print_timer; |
| 33 | 47 | int m_printer_x; |
| 34 | 48 | int m_printer_y; |
| 35 | | int m_printer_dir; |
| 36 | | int m_flag_a; |
| 37 | | int m_flag_b; |
| 38 | | emu_timer *m_print_timer; |
| 39 | | int m_printer_level; |
| 49 | bool m_printer_dir; |
| 50 | bool m_flag_a; |
| 51 | bool m_flag_b; |
| 52 | bool m_printer_level; |
| 40 | 53 | }; |
| 41 | 54 | |
| 42 | 55 | |
| r14129 | r14130 | |
| 48 | 61 | void aim65_update_ds4(device_t *device, int digit, int data); |
| 49 | 62 | void aim65_update_ds5(device_t *device, int digit, int data); |
| 50 | 63 | |
| 51 | | WRITE8_DEVICE_HANDLER(aim65_pia_a_w); |
| 52 | | WRITE8_DEVICE_HANDLER(aim65_pia_b_w); |
| 53 | 64 | |
| 54 | | READ8_DEVICE_HANDLER(aim65_riot_b_r); |
| 55 | | WRITE8_DEVICE_HANDLER(aim65_riot_a_w); |
| 56 | | WRITE_LINE_DEVICE_HANDLER(aim65_riot_irq); |
| 57 | | |
| 58 | 65 | MACHINE_START( aim65 ); |
| 59 | 66 | |
| 60 | 67 | |
| r14129 | r14130 | |
| 63 | 70 | VIDEO_START( aim65 ); |
| 64 | 71 | |
| 65 | 72 | /* Printer */ |
| 66 | | WRITE8_DEVICE_HANDLER( aim65_printer_data_a ); |
| 67 | | WRITE8_DEVICE_HANDLER( aim65_printer_data_b ); |
| 68 | | WRITE8_DEVICE_HANDLER( aim65_printer_on ); |
| 69 | 73 | |
| 70 | 74 | |
| 75 | |
| 71 | 76 | #endif /* AIM65_H_ */ |
src/mess/drivers/aim65.c
| r14129 | r14130 | |
| 11 | 11 | - Front panel Run/Step switch (switch S2) |
| 12 | 12 | |
| 13 | 13 | ******************************************************************************/ |
| 14 | #define ADDRESS_MAP_MODERN |
| 14 | 15 | |
| 15 | | #include "emu.h" |
| 16 | 16 | #include "includes/aim65.h" |
| 17 | | #include "cpu/m6502/m6502.h" |
| 18 | | #include "video/dl1416.h" |
| 19 | | #include "machine/6522via.h" |
| 20 | | #include "machine/6532riot.h" |
| 21 | | #include "machine/6821pia.h" |
| 22 | | #include "imagedev/cartslot.h" |
| 23 | | #include "machine/ram.h" |
| 24 | 17 | #include "aim65.lh" |
| 25 | 18 | |
| 26 | 19 | |
| r14129 | r14130 | |
| 29 | 22 | ***************************************************************************/ |
| 30 | 23 | |
| 31 | 24 | /* Note: RAM is mapped dynamically in machine/aim65.c */ |
| 32 | | static ADDRESS_MAP_START( aim65_mem, AS_PROGRAM, 8 ) |
| 25 | static ADDRESS_MAP_START( aim65_mem, AS_PROGRAM, 8, aim65_state ) |
| 33 | 26 | AM_RANGE( 0x1000, 0x9fff ) AM_NOP /* User available expansions */ |
| 34 | | AM_RANGE( 0xa000, 0xa00f ) AM_MIRROR(0x3f0) AM_DEVREADWRITE_MODERN("via6522_1", via6522_device, read, write)/* User VIA */ |
| 27 | AM_RANGE( 0xa000, 0xa00f ) AM_MIRROR(0x3f0) AM_DEVREADWRITE("via6522_1", via6522_device, read, write) // user via |
| 35 | 28 | AM_RANGE( 0xa400, 0xa47f ) AM_RAM /* RIOT RAM */ |
| 36 | | AM_RANGE( 0xa480, 0xa497 ) AM_DEVREADWRITE("riot", riot6532_r, riot6532_w) |
| 29 | AM_RANGE( 0xa480, 0xa497 ) AM_DEVREADWRITE_LEGACY("riot", riot6532_r, riot6532_w) |
| 37 | 30 | AM_RANGE( 0xa498, 0xa7ff ) AM_NOP /* Not available */ |
| 38 | | AM_RANGE( 0xa800, 0xa80f ) AM_MIRROR(0x3f0) AM_DEVREADWRITE_MODERN("via6522_0", via6522_device, read, write) |
| 39 | | AM_RANGE( 0xac00, 0xac03 ) AM_DEVREADWRITE_MODERN("pia6821", pia6821_device, read, write) |
| 31 | AM_RANGE( 0xa800, 0xa80f ) AM_MIRROR(0x3f0) AM_DEVREADWRITE("via6522_0", via6522_device, read, write) // system via |
| 32 | AM_RANGE( 0xac00, 0xac03 ) AM_DEVREADWRITE("pia6821", pia6821_device, read, write) |
| 40 | 33 | AM_RANGE( 0xac04, 0xac43 ) AM_RAM /* PIA RAM */ |
| 41 | 34 | AM_RANGE( 0xac44, 0xafff ) AM_NOP /* Not available */ |
| 42 | 35 | AM_RANGE( 0xb000, 0xffff ) AM_ROM /* 5 ROM sockets */ |
| r14129 | r14130 | |
| 140 | 133 | DEVICE INTERFACES |
| 141 | 134 | ***************************************************************************/ |
| 142 | 135 | |
| 136 | /* Riot interface Z33 */ |
| 143 | 137 | static const riot6532_interface aim65_riot_interface = |
| 144 | 138 | { |
| 145 | 139 | DEVCB_NULL, |
| 146 | | DEVCB_HANDLER(aim65_riot_b_r), |
| 147 | | DEVCB_HANDLER(aim65_riot_a_w), |
| 140 | DEVCB_DRIVER_MEMBER(aim65_state, aim65_riot_b_r), |
| 141 | DEVCB_DRIVER_MEMBER(aim65_state, aim65_riot_a_w), |
| 148 | 142 | DEVCB_NULL, |
| 149 | | DEVCB_LINE(aim65_riot_irq) |
| 143 | DEVCB_CPU_INPUT_LINE("maincpu", M6502_IRQ_LINE) |
| 150 | 144 | }; |
| 151 | 145 | |
| 152 | | /* system via interface */ |
| 146 | /* system via interface Z32 */ |
| 153 | 147 | static const via6522_interface aim65_system_via = |
| 154 | 148 | { |
| 155 | 149 | DEVCB_NULL, |
| r14129 | r14130 | |
| 158 | 152 | DEVCB_NULL, |
| 159 | 153 | DEVCB_NULL, |
| 160 | 154 | DEVCB_NULL, |
| 155 | DEVCB_DRIVER_MEMBER(aim65_state, aim65_printer_data_a), |
| 156 | DEVCB_DRIVER_MEMBER(aim65_state, aim65_printer_data_b), |
| 161 | 157 | DEVCB_NULL, |
| 162 | 158 | DEVCB_NULL, |
| 163 | 159 | DEVCB_NULL, |
| 164 | | DEVCB_NULL, |
| 165 | | DEVCB_NULL, |
| 166 | | DEVCB_NULL, |
| 160 | DEVCB_DRIVER_MEMBER(aim65_state, aim65_printer_on), |
| 167 | 161 | DEVCB_CPU_INPUT_LINE("maincpu", M6502_IRQ_LINE) |
| 168 | 162 | }; |
| 169 | 163 | |
| 170 | | /* user via interface */ |
| 164 | /* user via interface Z1 */ |
| 171 | 165 | static const via6522_interface aim65_user_via = |
| 172 | 166 | { |
| 173 | | DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, |
| 174 | | DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, |
| 167 | DEVCB_NULL, |
| 168 | DEVCB_NULL, |
| 169 | DEVCB_NULL, |
| 170 | DEVCB_NULL, |
| 171 | DEVCB_NULL, |
| 172 | DEVCB_NULL, |
| 173 | DEVCB_NULL, |
| 174 | DEVCB_NULL, |
| 175 | DEVCB_NULL, |
| 176 | DEVCB_NULL, |
| 177 | DEVCB_NULL, |
| 178 | DEVCB_NULL, |
| 175 | 179 | DEVCB_CPU_INPUT_LINE("maincpu", M6502_IRQ_LINE) |
| 176 | 180 | }; |
| 177 | 181 | |
| 182 | /* R6520 interface U1 */ |
| 178 | 183 | static const pia6821_interface aim65_pia_config = |
| 179 | 184 | { |
| 180 | | DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, |
| 181 | | DEVCB_HANDLER(aim65_pia_a_w), DEVCB_HANDLER(aim65_pia_b_w), |
| 182 | | DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL |
| 185 | DEVCB_NULL, |
| 186 | DEVCB_NULL, |
| 187 | DEVCB_NULL, |
| 188 | DEVCB_NULL, |
| 189 | DEVCB_NULL, |
| 190 | DEVCB_NULL, |
| 191 | DEVCB_DRIVER_MEMBER(aim65_state, aim65_pia_a_w), |
| 192 | DEVCB_DRIVER_MEMBER(aim65_state, aim65_pia_b_w), |
| 193 | DEVCB_NULL, |
| 194 | DEVCB_NULL, |
| 195 | DEVCB_NULL, |
| 196 | DEVCB_NULL |
| 183 | 197 | }; |
| 184 | 198 | |
| 185 | 199 | |
| r14129 | r14130 | |
| 268 | 282 | GAME DRIVERS |
| 269 | 283 | ***************************************************************************/ |
| 270 | 284 | |
| 271 | | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */ |
| 272 | | COMP(1977, aim65, 0, 0, aim65, aim65, 0, "Rockwell", "AIM 65", GAME_NO_SOUND ) |
| 285 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */ |
| 286 | COMP(1977, aim65, 0, 0, aim65, aim65, 0, "Rockwell", "AIM 65", GAME_NO_SOUND_HW ) |