mirror of
https://github.com/libretro/mame.git
synced 2025-03-01 15:55:45 +00:00
Software list items promoted to working
--------------------------------------- msx1_cart: Easi-Speech [hap]
This commit is contained in:
parent
933f60e452
commit
c827d7542a
@ -13007,7 +13007,7 @@ kept for now until finding out what those bytes affect...
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="espeech" supported="no">
|
||||
<software name="espeech">
|
||||
<description>Easi-Speech</description>
|
||||
<year>1987</year>
|
||||
<publisher>R.Amy</publisher>
|
||||
|
@ -6,12 +6,7 @@ Easi-Speech cartridge (R.Amy, 1987)
|
||||
|
||||
The program adds a hook to 0xfd29, usage appears to be something like this:
|
||||
defusr0=&hfd29
|
||||
x=usr0("hello")
|
||||
|
||||
TODO:
|
||||
- Speech doesn't work. At boot, it's supposed to say "M S X easy speech".
|
||||
Maybe ald_w data is scrambled a bit? The expected usage in notes above
|
||||
also does not work.
|
||||
a$=usr0("hello")
|
||||
|
||||
******************************************************************************/
|
||||
|
||||
@ -47,9 +42,9 @@ void msx_cart_easispeech_device::device_add_mconfig(machine_config &config)
|
||||
|
||||
uint8_t msx_cart_easispeech_device::read_cart(offs_t offset)
|
||||
{
|
||||
if (offset >= 0x4000 && offset < 0x8000)
|
||||
if (offset >= 0x4000 && offset < 0x6000)
|
||||
return get_rom_base()[offset & 0x1fff];
|
||||
if (offset >= 0x8000 && offset < 0xc000)
|
||||
if (offset >= 0x8000 && offset < 0xa000)
|
||||
return m_speech->lrq_r() << 7;
|
||||
|
||||
return 0xff;
|
||||
@ -57,6 +52,6 @@ uint8_t msx_cart_easispeech_device::read_cart(offs_t offset)
|
||||
|
||||
void msx_cart_easispeech_device::write_cart(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (offset >= 0x8000 && offset < 0xc000)
|
||||
m_speech->ald_w(data >> 2);
|
||||
if (offset >= 0x8000 && offset < 0xa000)
|
||||
m_speech->ald_w(bitswap<6>(data,3,5,7,6,4,2));
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user