mirror of
https://github.com/holub/mame
synced 2025-07-05 01:48:29 +03:00
ay8910.cpp: Document device names (nw)
This commit is contained in:
parent
adab8a2a69
commit
a61d1ba698
@ -380,7 +380,7 @@ AY-3-8913:
|
|||||||
[4] This is claimed to be equivalent to TEST 2 on the datasheet
|
[4] This is claimed to be equivalent to TEST 2 on the datasheet
|
||||||
|
|
||||||
|
|
||||||
AY-3-8910/A: 2 I/O ports
|
GI AY-3-8910/A Programmable Sound Generator (PSG): 2 I/O ports
|
||||||
A7 thru A4 enable state for selecting a register can be changed with a
|
A7 thru A4 enable state for selecting a register can be changed with a
|
||||||
factory mask adjustment but default was 0000 for the "common" part shipped
|
factory mask adjustment but default was 0000 for the "common" part shipped
|
||||||
(probably die "-100").
|
(probably die "-100").
|
||||||
@ -392,7 +392,7 @@ AY-3-8910/A: 2 I/O ports
|
|||||||
AY-3-8910 die is labeled "90-32033" with a 1979 copyright and a "-100" die
|
AY-3-8910 die is labeled "90-32033" with a 1979 copyright and a "-100" die
|
||||||
code.
|
code.
|
||||||
AY-3-8910A die is labeled "90-32128" with a 1983 copyright.
|
AY-3-8910A die is labeled "90-32128" with a 1983 copyright.
|
||||||
AY-3-8912/A: 1 I/O port
|
GI AY-3-8912/A: 1 I/O port
|
||||||
/A9 pin doesn't exist and is considered pulled low.
|
/A9 pin doesn't exist and is considered pulled low.
|
||||||
TEST2 pin doesn't exist and is considered pulled high.
|
TEST2 pin doesn't exist and is considered pulled high.
|
||||||
IOB pins do not exist and have unknown behavior if driven high/low and read
|
IOB pins do not exist and have unknown behavior if driven high/low and read
|
||||||
@ -411,7 +411,7 @@ AY-3-8913: 0 I/O ports
|
|||||||
factory mask adjustment but default was 0000 for the "common" part shipped
|
factory mask adjustment but default was 0000 for the "common" part shipped
|
||||||
AY-3-8913: Unused bits in registers have unknown behavior.
|
AY-3-8913: Unused bits in registers have unknown behavior.
|
||||||
AY-3-8913 die is unknown.
|
AY-3-8913 die is unknown.
|
||||||
AY-3-8914/A: 2 I/O ports
|
GI AY-3-8914/A: 2 I/O ports
|
||||||
A7 thru A4 enable state for selecting a register can be changed with a
|
A7 thru A4 enable state for selecting a register can be changed with a
|
||||||
factory mask adjustment but was 0000 for the part shipped with the
|
factory mask adjustment but was 0000 for the part shipped with the
|
||||||
Intellivision.
|
Intellivision.
|
||||||
@ -430,7 +430,7 @@ AY-3-8914/A: 2 I/O ports
|
|||||||
I/O current source/sink behavior is unknown.
|
I/O current source/sink behavior is unknown.
|
||||||
AY-3-8914 die is labeled "90-32022" with a 1978 copyright.
|
AY-3-8914 die is labeled "90-32022" with a 1978 copyright.
|
||||||
AY-3-8914A die is unknown.
|
AY-3-8914A die is unknown.
|
||||||
AY-3-8916: 2 I/O ports
|
GI AY-3-8916: 2 I/O ports
|
||||||
A7 thru A4 enable state for selecting a register can be changed with a
|
A7 thru A4 enable state for selecting a register can be changed with a
|
||||||
factory mask adjustment; its mask is unknown. This chip was shipped
|
factory mask adjustment; its mask is unknown. This chip was shipped
|
||||||
with certain later Intellivision II systems.
|
with certain later Intellivision II systems.
|
||||||
@ -440,7 +440,7 @@ AY-3-8916: 2 I/O ports
|
|||||||
AY-3-8916: Unused bits in registers have unknown behavior.
|
AY-3-8916: Unused bits in registers have unknown behavior.
|
||||||
I/O current source/sink behavior is unknown.
|
I/O current source/sink behavior is unknown.
|
||||||
AY-3-8916 die is unknown.
|
AY-3-8916 die is unknown.
|
||||||
AY-3-8917: 2 I/O ports
|
GI AY-3-8917: 2 I/O ports
|
||||||
A7 thru A4 enable state for selecting a register can be changed with a
|
A7 thru A4 enable state for selecting a register can be changed with a
|
||||||
factory mask adjustment but was 1111 for the part shipped with the
|
factory mask adjustment but was 1111 for the part shipped with the
|
||||||
Intellivision ECS module.
|
Intellivision ECS module.
|
||||||
@ -450,7 +450,7 @@ AY-3-8917: 2 I/O ports
|
|||||||
AY-3-8917: Unused bits in registers have unknown behavior.
|
AY-3-8917: Unused bits in registers have unknown behavior.
|
||||||
I/O current source/sink behavior is unknown.
|
I/O current source/sink behavior is unknown.
|
||||||
AY-3-8917 die is unknown.
|
AY-3-8917 die is unknown.
|
||||||
AY8930: 2 I/O ports
|
Microchip AY8930 Enhanced Programmable Sound Generator (EPSG): 2 I/O ports
|
||||||
BC2 pin exists but is always considered pulled high. The pin might have no
|
BC2 pin exists but is always considered pulled high. The pin might have no
|
||||||
bond wire at all.
|
bond wire at all.
|
||||||
Pins 2 and 5 might be additional test pins rather than being NC.
|
Pins 2 and 5 might be additional test pins rather than being NC.
|
||||||
@ -471,7 +471,7 @@ AY8930: 2 I/O ports
|
|||||||
explicitly states that unused bits always read as 0.
|
explicitly states that unused bits always read as 0.
|
||||||
I/O current source/sink behavior is unknown.
|
I/O current source/sink behavior is unknown.
|
||||||
AY8930 die is unknown.
|
AY8930 die is unknown.
|
||||||
YM2149: 2 I/O ports
|
Yamaha YM2149 Software-Controlled Sound Generator (SSG): 2 I/O ports
|
||||||
A7 thru A4 enable state for selecting a register are 0000 for all? parts
|
A7 thru A4 enable state for selecting a register are 0000 for all? parts
|
||||||
shipped.
|
shipped.
|
||||||
Pins 24 and 25 are /A9, A8 which are an active low and high chip enable.
|
Pins 24 and 25 are /A9, A8 which are an active low and high chip enable.
|
||||||
@ -483,7 +483,7 @@ YM2149: 2 I/O ports
|
|||||||
I/O current source/sink behavior is unknown.
|
I/O current source/sink behavior is unknown.
|
||||||
YM2149 die is unknown; only one die revision, 'G', has been observed
|
YM2149 die is unknown; only one die revision, 'G', has been observed
|
||||||
from Yamaha chip/datecode silkscreen surface markings.
|
from Yamaha chip/datecode silkscreen surface markings.
|
||||||
YM2203: 2 I/O ports
|
Yamaha YM2203: 2 I/O ports
|
||||||
The pinout of this chip is completely different from the AY-3-8910.
|
The pinout of this chip is completely different from the AY-3-8910.
|
||||||
The entire way this chip is accessed is completely different from the usual
|
The entire way this chip is accessed is completely different from the usual
|
||||||
AY-3-8910 selection of chips, so there is a /CS and a /RD and a /WR and
|
AY-3-8910 selection of chips, so there is a /CS and a /RD and a /WR and
|
||||||
@ -498,13 +498,13 @@ YM2203: 2 I/O ports
|
|||||||
from Yamaha chip/datecode silkscreen surface markings. It is unknown
|
from Yamaha chip/datecode silkscreen surface markings. It is unknown
|
||||||
what behavioral differences exist between these two revisions.
|
what behavioral differences exist between these two revisions.
|
||||||
The 'F' revision only appears during the first year of production.
|
The 'F' revision only appears during the first year of production.
|
||||||
YM3439: limited info: CMOS version of YM2149?
|
Yamaha YM3439: limited info: CMOS version of YM2149?
|
||||||
YMZ284: limited info: 0 I/O port, different clock divider
|
Yamaha YMZ284: limited info: 0 I/O port, different clock divider
|
||||||
The chip selection logic is again simplified here: pin 1 is /WR, pin 2 is
|
The chip selection logic is again simplified here: pin 1 is /WR, pin 2 is
|
||||||
/CS and pin 3 is A0.
|
/CS and pin 3 is A0.
|
||||||
D0-D7 are conveniently all on one side of the 16-pin package.
|
D0-D7 are conveniently all on one side of the 16-pin package.
|
||||||
Pin 8 is /IC (initial clear), with an internal pullup.
|
Pin 8 is /IC (initial clear), with an internal pullup.
|
||||||
YMZ294: limited info: 0 I/O port
|
Yamaha YMZ294: limited info: 0 I/O port
|
||||||
Pinout is identical to YMZ284 except for two additions: pin 8 selects
|
Pinout is identical to YMZ284 except for two additions: pin 8 selects
|
||||||
between 4MHz (H) and 6MHz (L), while pin 10 is /TEST.
|
between 4MHz (H) and 6MHz (L), while pin 10 is /TEST.
|
||||||
OKI M5255, Winbond WF19054, JFC 95101, File KC89C72, Toshiba T7766A : differences to be listed
|
OKI M5255, Winbond WF19054, JFC 95101, File KC89C72, Toshiba T7766A : differences to be listed
|
||||||
@ -1466,7 +1466,7 @@ WRITE8_MEMBER( ay8914_device::write )
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(AY8910, ay8910_device, "ay8910", "AY-3-8910A")
|
DEFINE_DEVICE_TYPE(AY8910, ay8910_device, "ay8910", "AY-3-8910A PSG")
|
||||||
|
|
||||||
ay8910_device::ay8910_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ay8910_device::ay8910_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, AY8910, tag, owner, clock, PSG_TYPE_AY, 3, 2)
|
: ay8910_device(mconfig, AY8910, tag, owner, clock, PSG_TYPE_AY, 3, 2)
|
||||||
@ -1539,7 +1539,7 @@ void ay8910_device::set_type(psg_type_t psg_type)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(AY8912, ay8912_device, "ay8912", "AY-3-8912A")
|
DEFINE_DEVICE_TYPE(AY8912, ay8912_device, "ay8912", "AY-3-8912A PSG")
|
||||||
|
|
||||||
ay8912_device::ay8912_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ay8912_device::ay8912_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, AY8912, tag, owner, clock, PSG_TYPE_AY, 3, 1)
|
: ay8910_device(mconfig, AY8912, tag, owner, clock, PSG_TYPE_AY, 3, 1)
|
||||||
@ -1547,7 +1547,7 @@ ay8912_device::ay8912_device(const machine_config &mconfig, const char *tag, dev
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(AY8913, ay8913_device, "ay8913", "AY-3-8913A")
|
DEFINE_DEVICE_TYPE(AY8913, ay8913_device, "ay8913", "AY-3-8913 PSG")
|
||||||
|
|
||||||
ay8913_device::ay8913_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ay8913_device::ay8913_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, AY8913, tag, owner, clock, PSG_TYPE_AY, 3, 0)
|
: ay8910_device(mconfig, AY8913, tag, owner, clock, PSG_TYPE_AY, 3, 0)
|
||||||
@ -1555,7 +1555,7 @@ ay8913_device::ay8913_device(const machine_config &mconfig, const char *tag, dev
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(AY8914, ay8914_device, "ay8914", "AY-3-8914A")
|
DEFINE_DEVICE_TYPE(AY8914, ay8914_device, "ay8914", "AY-3-8914A PSG")
|
||||||
|
|
||||||
ay8914_device::ay8914_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ay8914_device::ay8914_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, AY8914, tag, owner, clock, PSG_TYPE_AY, 3, 2)
|
: ay8910_device(mconfig, AY8914, tag, owner, clock, PSG_TYPE_AY, 3, 2)
|
||||||
@ -1563,7 +1563,7 @@ ay8914_device::ay8914_device(const machine_config &mconfig, const char *tag, dev
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(AY8930, ay8930_device, "ay8930", "AY-3-8930A")
|
DEFINE_DEVICE_TYPE(AY8930, ay8930_device, "ay8930", "AY8930 EPSG")
|
||||||
|
|
||||||
ay8930_device::ay8930_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ay8930_device::ay8930_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, AY8930, tag, owner, clock, PSG_TYPE_AY, 3, 2)
|
: ay8910_device(mconfig, AY8930, tag, owner, clock, PSG_TYPE_AY, 3, 2)
|
||||||
@ -1571,7 +1571,7 @@ ay8930_device::ay8930_device(const machine_config &mconfig, const char *tag, dev
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(YM2149, ym2149_device, "ym2149", "YM2149")
|
DEFINE_DEVICE_TYPE(YM2149, ym2149_device, "ym2149", "YM2149 SSG")
|
||||||
|
|
||||||
ym2149_device::ym2149_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ym2149_device::ym2149_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, YM2149, tag, owner, clock, PSG_TYPE_YM, 3, 2)
|
: ay8910_device(mconfig, YM2149, tag, owner, clock, PSG_TYPE_YM, 3, 2)
|
||||||
@ -1579,7 +1579,7 @@ ym2149_device::ym2149_device(const machine_config &mconfig, const char *tag, dev
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(YM3439, ym3439_device, "ym3439", "YM3439")
|
DEFINE_DEVICE_TYPE(YM3439, ym3439_device, "ym3439", "YM3439 SSGC")
|
||||||
|
|
||||||
ym3439_device::ym3439_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ym3439_device::ym3439_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, YM3439, tag, owner, clock, PSG_TYPE_YM, 3, 2)
|
: ay8910_device(mconfig, YM3439, tag, owner, clock, PSG_TYPE_YM, 3, 2)
|
||||||
@ -1587,7 +1587,7 @@ ym3439_device::ym3439_device(const machine_config &mconfig, const char *tag, dev
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(YMZ284, ymz284_device, "ymz284", "YMZ284")
|
DEFINE_DEVICE_TYPE(YMZ284, ymz284_device, "ymz284", "YMZ284 SSGL")
|
||||||
|
|
||||||
ymz284_device::ymz284_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ymz284_device::ymz284_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, YMZ284, tag, owner, clock, PSG_TYPE_YM, 1, 0)
|
: ay8910_device(mconfig, YMZ284, tag, owner, clock, PSG_TYPE_YM, 1, 0)
|
||||||
@ -1595,7 +1595,7 @@ ymz284_device::ymz284_device(const machine_config &mconfig, const char *tag, dev
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(YMZ294, ymz294_device, "ymz294", "YMZ294")
|
DEFINE_DEVICE_TYPE(YMZ294, ymz294_device, "ymz294", "YMZ294 SSGLP")
|
||||||
|
|
||||||
ymz294_device::ymz294_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
ymz294_device::ymz294_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: ay8910_device(mconfig, YMZ294, tag, owner, clock, PSG_TYPE_YM, 1, 0)
|
: ay8910_device(mconfig, YMZ294, tag, owner, clock, PSG_TYPE_YM, 1, 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user