trunk/src/emu/cpu/amis2000/amis2000.h
| r243565 | r243566 | |
| 91 | 91 | UINT8 m_bu; // 2/3-bit ram index y |
| 92 | 92 | UINT8 m_acc; // 4-bit accumulator |
| 93 | 93 | UINT8 m_e; // 4-bit generic register |
| 94 | | UINT8 m_i; // 4-bit i-pins latch |
| 95 | | UINT8 m_k; // 4-bit k-pins latch |
| 94 | UINT8 m_ki_mask; // 4-bit k/i-pins select latch |
| 96 | 95 | UINT8 m_d; // 8-bit d-pins latch |
| 97 | 96 | bool m_d_active; // d-pins available for direct i/o(floating), or outputting d-latch |
| 98 | 97 | UINT8 m_d_polarity; // invert d-latch output |
trunk/src/emu/cpu/amis2000/amis2000op.inc
| r243565 | r243566 | |
| 45 | 45 | { |
| 46 | 46 | UINT8 param = m_op & 0x0f; |
| 47 | 47 | m_acc = param; |
| 48 | | m_i = m_read_i(0, 0xff) & param; |
| 49 | | m_k = m_read_k(0, 0xff) & param; |
| 48 | m_ki_mask = param; |
| 50 | 49 | } |
| 51 | 50 | } |
| 52 | 51 | |
| r243565 | r243566 | |
| 371 | 370 | |
| 372 | 371 | void amis2000_device::op_szi() |
| 373 | 372 | { |
| 374 | | // SZI: skip next on zero I pin(s) |
| 375 | | m_skip = !m_i; |
| 373 | // SZI: skip next on I pin(s) |
| 374 | // note: AMI's manual is ambiguous here |
| 375 | m_skip = ((m_read_i(0, 0xff) & m_ki_mask) != 0); |
| 376 | 376 | } |
| 377 | 377 | |
| 378 | 378 | void amis2000_device::op_szk() |
| 379 | 379 | { |
| 380 | | // SZK: skip next on zero K pin(s) |
| 381 | | m_skip = !m_k; |
| 380 | // SZK: skip next on K pin(s) |
| 381 | // note: AMI's manual is ambiguous here |
| 382 | m_skip = ((m_read_k(0, 0xff) & m_ki_mask) != 0); |
| 382 | 383 | } |
| 383 | 384 | |
| 384 | 385 | void amis2000_device::op_sbe() |