trunk/src/emu/cpu/amis2000/amis2000.c
| r243264 | r243265 | |
| 5 | 5 | American Microsystems, Inc.(AMI) S2000-family 4-bit MCU cores, introduced late 1970s |
| 6 | 6 | |
| 7 | 7 | TODO: |
| 8 | | - x |
| 8 | - unemulated opcodes (need more testing material) |
| 9 | - support external program map |
| 10 | - add 50/60hz timer |
| 9 | 11 | - add S2200/S2400 |
| 10 | 12 | |
| 11 | 13 | */ |
| r243264 | r243265 | |
| 147 | 149 | m_e = 0; |
| 148 | 150 | m_i = 0; |
| 149 | 151 | m_k = 0; |
| 152 | m_d = 0; |
| 153 | m_a = 0; |
| 150 | 154 | |
| 151 | 155 | // register for savestates |
| 152 | 156 | save_item(NAME(m_callstack)); |
| r243264 | r243265 | |
| 164 | 168 | save_item(NAME(m_e)); |
| 165 | 169 | save_item(NAME(m_i)); |
| 166 | 170 | save_item(NAME(m_k)); |
| 171 | save_item(NAME(m_d)); |
| 172 | save_item(NAME(m_a)); |
| 167 | 173 | |
| 168 | 174 | // register state for debugger |
| 169 | 175 | state_add(S2000_PC, "PC", m_pc ).formatstr("%04X"); |
| r243264 | r243265 | |
| 190 | 196 | m_pc = 0; |
| 191 | 197 | m_skip = false; |
| 192 | 198 | m_op = 0; |
| 199 | |
| 200 | // clear i/o |
| 201 | m_i = 0; |
| 202 | m_k = 0; |
| 203 | m_d = 0; m_write_d(0, 0, 0xff); |
| 204 | m_a = 0; m_write_a(0, 0, 0xffff); |
| 193 | 205 | } |
| 194 | 206 | |
| 195 | 207 | |
trunk/src/emu/cpu/amis2000/amis2000op.inc
| r243264 | r243265 | |
| 187 | 187 | void amis2000_device::op_disb() |
| 188 | 188 | { |
| 189 | 189 | // DISB: set D-latch to ACC and RAM directly |
| 190 | | op_illegal(); |
| 190 | m_d = m_acc | ram_r() << 4; |
| 191 | m_write_d(0, m_d, 0xff); |
| 192 | // TODO: exit from floating mode on D-pins |
| 191 | 193 | } |
| 192 | 194 | |
| 193 | 195 | void amis2000_device::op_disn() |
| 194 | 196 | { |
| 195 | | // DISN: set D-latch to ACC+carry via segment decoder |
| 196 | | op_illegal(); |
| 197 | // DISN: set D-latch to ACC+carry via on-die segment decoder |
| 198 | static const UINT8 lut_segment_decoder[0x10] = |
| 199 | { |
| 200 | // 0-F digits in bit order [DP]abcdefg |
| 201 | 0x7e, 0x30, 0x6d, 0x79, 0x33, 0x5b, 0x5f, 0x70, 0x7f, 0x7b, 0x77, 0x1f, 0x4e, 0x3d, 0x4f, 0x47 |
| 202 | }; |
| 203 | m_d = lut_segment_decoder[m_acc] | (m_carry ? 0x80 : 0x00); |
| 204 | m_write_d(0, m_d, 0xff); |
| 205 | // TODO: exit from floating mode on D-pins |
| 197 | 206 | } |
| 198 | 207 | |
| 199 | 208 | void amis2000_device::op_mvs() |
| 200 | 209 | { |
| 201 | 210 | // MVS: output master strobe latch to A-pins |
| 202 | | op_illegal(); |
| 211 | m_write_a(0, m_a, 0xffff); |
| 212 | // TODO: enter floating mode on D-pins |
| 203 | 213 | } |
| 204 | 214 | |
| 205 | 215 | void amis2000_device::op_psh() |
| 206 | 216 | { |
| 207 | 217 | // PSH: preset high(BL) master strobe latch |
| 208 | | op_illegal(); |
| 218 | switch (m_bl) |
| 219 | { |
| 220 | case 0xd: |
| 221 | // set multiplex operation |
| 222 | // ? |
| 223 | break; |
| 224 | |
| 225 | case 0xe: |
| 226 | // exit from floating mode on D-pins |
| 227 | // ? |
| 228 | break; |
| 229 | |
| 230 | case 0xf: |
| 231 | // set all latch bits high |
| 232 | m_a = 0x1fff; |
| 233 | break; |
| 234 | |
| 235 | default: |
| 236 | // set selected latch bit high |
| 237 | m_a |= (1 << m_bl); |
| 238 | break; |
| 239 | } |
| 209 | 240 | } |
| 210 | 241 | |
| 211 | 242 | void amis2000_device::op_psl() |
| 212 | 243 | { |
| 213 | 244 | // PSL: preset low(BL) master strobe latch |
| 214 | | op_illegal(); |
| 245 | switch (m_bl) |
| 246 | { |
| 247 | case 0xd: |
| 248 | // set static operation |
| 249 | // ? |
| 250 | break; |
| 251 | |
| 252 | case 0xe: |
| 253 | // enter floating mode on D-pins |
| 254 | // ? |
| 255 | break; |
| 256 | |
| 257 | case 0xf: |
| 258 | // set all latch bits low |
| 259 | m_a = 0; |
| 260 | break; |
| 261 | |
| 262 | default: |
| 263 | // set selected latch bit low |
| 264 | m_a &= ~(1 << m_bl); |
| 265 | break; |
| 266 | } |
| 215 | 267 | } |
| 216 | 268 | |
| 217 | 269 | void amis2000_device::op_eur() |
trunk/src/mame/drivers/comebaby.c
| r243264 | r243265 | |
| 2 | 2 | (c) 2000 ExPotato Co. Ltd (Excellent Potato) |
| 3 | 3 | |
| 4 | 4 | TODO: |
| 5 | | can't be emulated without proper mb bios |
| 5 | Can't be emulated without proper motherboard BIOS |
| 6 | 6 | |
| 7 | | There also appears to be a sequel which may be running on the same hardware |
| 7 | There also appears to be a sequel which may be running on the same hardware, which might not have been released. |
| 8 | 8 | Come On Baby - Ballympic Heroes! (c) 2001 |
| 9 | |
| 10 | Other games in this series include: |
| 11 | Come On Baby 2 (c) 2002 |
| 12 | Come On Baby Jr (c) 2003 (which seems to be otherwise identical to Come On Baby but in a smaller cabinet) |
| 13 | Come On Baby 2 Jr (c) 2003 (which seems to be otherwise identical to Come On Baby 2 but in a smaller cabinet) |
| 14 | These may or may not be on identical hardware. |
| 9 | 15 | |
| 10 | 16 | This is a Korean PC based board running Windows. The game runs fully from |
| 11 | 17 | the hard disk making these things rather fragile and prone to damage. |
| r243264 | r243265 | |
| 14 | 20 | just a skeleton placeholder for the CHD dump of the hard disk. |
| 15 | 21 | |
| 16 | 22 | The donor PC looks like a standard Windows98 setup. |
| 17 | | The only exceptions I see are that there's a game logo.sys/logo.bmp in the |
| 23 | The only exceptions we see are that there's a game logo.sys/logo.bmp in the |
| 18 | 24 | root directory to hide the Windows98 startup screen, and a shortcut to |
| 19 | 25 | the game in the startup programs. |
| 20 | 26 | Also of interest, Windows98 was installed from a setup folder on the HD. |