--- nono/vm/upd7201.cpp 2026/04/29 17:04:56 1.1.1.7 +++ nono/vm/upd7201.cpp 2026/04/29 17:04:59 1.1.1.8 @@ -515,7 +515,7 @@ uPD7201Device::MonitorUpdate(Monitor *, } else { screen.Print(9, y, "RTSB"); } - screen.Print(14, y, "----"); + screen.Print(14, y, TA::Disable, "----"); screen.Print(19, y, TA::OnOff((cr2a & 0x20)), "Vect"); if ((cr2a & 0x18) == 0x10) { screen.Print(24, y, "IM=V4-V2"); @@ -618,7 +618,7 @@ uPD7201Device::MonitorUpdateCh(TextScree // CR1 static const char * const cr1_str[] = { - "WaEn", "----", "WaRx", "", "", "----", "TxIE", "ESEn" + "WaEn", "-", "WaRx", "", "", "-", "TxIE", "ESEn" }; MonitorReg(screen, x + 9, y, cr1, cr1_str); static const char * const rxint_str[] = { @@ -633,7 +633,7 @@ uPD7201Device::MonitorUpdateCh(TextScree // CR3 static const char * const cr3_str[] = { - "", "", "AuEn", "----", "----", "----", "----", "RXEn" + "", "", "AuEn", "-", "-", "-", "-", "RXEn" }; MonitorReg(screen, x + 9, y, cr3, cr3_str); screen.Print(x + 9, y, "RXbits=%d", 5 + ((cr3 >> 6) & 3)); @@ -674,7 +674,7 @@ uPD7201Device::MonitorUpdateCh(TextScree MonitorReg(screen, x + 9, y, sr0, sr0_str); // SR0 の bit1 (Interrupt Pending) は SR0A のみ。SR0B では 0。 if (ch == 1) { - screen.Print(39, y, "----"); + screen.Print(39, y, TA::Disable, "----"); } y++; @@ -693,8 +693,8 @@ uPD7201Device::MonitorReg(TextScreen& sc int x, int y, uint32 reg, const char * const *names) { for (int i = 0; i < 8; i++) { - if (strcmp(names[i], "----") == 0) { - screen.Puts(x + i * 5, y, TA::Disable, names[i]); + if (names[i][0] == '-') { + screen.Puts(x + i * 5, y, TA::Disable, "----"); } else { bool b = reg & (1 << (7 - i)); screen.Puts(x + i * 5, y, TA::OnOff(b), names[i]);