summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2019-12-24 11:28:23 -0500
committer AJR <ajrhacker@users.noreply.github.com>2019-12-24 11:28:23 -0500
commit6f97b7535e6df6acf8103da547a122582c699b6b (patch)
treed77ae5de46ee36a328dad1d5909301c8e1eab53f
parente7730aca67641f9fa95f78b786a35a5ecaaae2be (diff)
vt52: Misc. notes and things (nw)
-rw-r--r--src/devices/cpu/vt50/vt50.cpp2
-rw-r--r--src/devices/cpu/vt50/vt50dasm.cpp2
-rw-r--r--src/mame/drivers/vt52.cpp10
3 files changed, 8 insertions, 6 deletions
diff --git a/src/devices/cpu/vt50/vt50.cpp b/src/devices/cpu/vt50/vt50.cpp
index 346c057ecc9..c07d9b44014 100644
--- a/src/devices/cpu/vt50/vt50.cpp
+++ b/src/devices/cpu/vt50/vt50.cpp
@@ -556,7 +556,7 @@ void vt5x_cpu_device::execute_th(u8 inst)
void vt52_cpu_device::execute_th(u8 inst)
{
- // not actually synchronized to TH
+ // not actually synchronized to TH (but may be gated externally with EN CYCLE)
if ((inst & 0362) == 0162)
m_graphic_callback(m_ram_do);
diff --git a/src/devices/cpu/vt50/vt50dasm.cpp b/src/devices/cpu/vt50/vt50dasm.cpp
index 6b450364b76..84e9f231fb3 100644
--- a/src/devices/cpu/vt50/vt50dasm.cpp
+++ b/src/devices/cpu/vt50/vt50dasm.cpp
@@ -42,7 +42,7 @@ const char *const vt50_disassembler::s_opcodes_g[8] = {
};
const char *const vt52_disassembler::s_opcodes_g[8] = {
- "M2A", "A2M", "M2U", "B2M", "M2X", "U2M", "M2B", "GRAPHIC"
+ "M2A", "A2M", "M2U", "B2M", "M2X", "U2M", "M2B", "GRPH"
};
const char *const vt5x_disassembler::s_jumps_h[2][8] = {
diff --git a/src/mame/drivers/vt52.cpp b/src/mame/drivers/vt52.cpp
index a70a51b648e..110c7ebb03e 100644
--- a/src/mame/drivers/vt52.cpp
+++ b/src/mame/drivers/vt52.cpp
@@ -116,10 +116,12 @@ void vt52_state::vert_count_w(u8 data)
m_uart->write_tcp(clk);
}
else
+ {
m_uart->write_rcp((~(baud | data) & 0x0e) == 0);
+ m_uart->write_tcp((~(baud | data) & 0x71) == 0);
+ }
}
-
- if ((baud & 0x0380) == 0x0380)
+ else if ((baud & 0x0380) == 0x0380)
m_uart->write_tcp((~(baud | data) & 0x71) == 0);
}
@@ -325,7 +327,7 @@ void vt52_state::vt52(machine_config &mconfig)
screen.set_screen_update(FUNC(vt52_state::screen_update));
SPEAKER(mconfig, "mono").front_center();
- SPEAKER_SOUND(mconfig, "bell").add_route(ALL_OUTPUTS, "mono", 1.0);
+ SPEAKER_SOUND(mconfig, "bell").add_route(ALL_OUTPUTS, "mono", 1.0); // FIXME: uses a flyback diode circuit
}
ROM_START(vt52)
@@ -339,4 +341,4 @@ ROM_START(vt52)
ROM_LOAD("23-002b4.e1", 0x000, 0x400, CRC(b486500c) SHA1(029f07424d6c23ee083db42d9f9c252ac728ccd0))
ROM_END
-COMP(1975, vt52, 0, 0, vt52, vt52, vt52_state, empty_init, "Digital Equipment Corporation", "VT52 Video Display Terminal", MACHINE_NOT_WORKING)
+COMP(1975, vt52, 0, 0, vt52, vt52, vt52_state, empty_init, "Digital Equipment Corporation", "VT52 Video Display Terminal", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND)