mirror of
https://github.com/holub/mame
synced 2025-07-03 17:08:39 +03:00
Merge pull request #4638 from shattered/_535aece712
use logmacro.h instead of ad-hoc DBG_LOG macro (nw)
This commit is contained in:
commit
95f4c94198
@ -12,18 +12,6 @@
|
|||||||
#include "cpu/i86/i86.h"
|
#include "cpu/i86/i86.h"
|
||||||
#include "formats/pc_dsk.h"
|
#include "formats/pc_dsk.h"
|
||||||
|
|
||||||
#define VERBOSE_DBG 0
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
|
||||||
do { \
|
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
|
||||||
if( M ) \
|
|
||||||
logerror("%11.6f: %-24s",machine().time().as_double(),(char*)M ); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// DEVICE DEFINITIONS
|
// DEVICE DEFINITIONS
|
||||||
|
@ -12,18 +12,6 @@
|
|||||||
#include "cpu/i86/i86.h"
|
#include "cpu/i86/i86.h"
|
||||||
#include "formats/pc_dsk.h"
|
#include "formats/pc_dsk.h"
|
||||||
|
|
||||||
#define VERBOSE_DBG 0
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
|
||||||
do { \
|
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
|
||||||
if( M ) \
|
|
||||||
logerror("%11.6f: %-24s",machine().time().as_double(),(char*)M ); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// DEVICE DEFINITIONS
|
// DEVICE DEFINITIONS
|
||||||
@ -87,7 +75,6 @@ const tiny_rom_entry *p1_fdc_device::device_rom_region() const
|
|||||||
|
|
||||||
uint8_t p1_fdc_device::p1_wd17xx_motor_r()
|
uint8_t p1_fdc_device::p1_wd17xx_motor_r()
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "p1_fdc_motor_r", ("R = $%02x\n", 0));
|
|
||||||
// XXX always on for now
|
// XXX always on for now
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -118,8 +105,6 @@ uint8_t p1_fdc_device::p1_wd17xx_aux_r()
|
|||||||
*/
|
*/
|
||||||
void p1_fdc_device::p1_wd17xx_aux_w(int data)
|
void p1_fdc_device::p1_wd17xx_aux_w(int data)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "p1_fdc_aux_w", ("W $%02x\n", data));
|
|
||||||
|
|
||||||
floppy_image_device *floppy0 = m_fdc->subdevice<floppy_connector>("0")->get_device();
|
floppy_image_device *floppy0 = m_fdc->subdevice<floppy_connector>("0")->get_device();
|
||||||
floppy_image_device *floppy1 = m_fdc->subdevice<floppy_connector>("1")->get_device();
|
floppy_image_device *floppy1 = m_fdc->subdevice<floppy_connector>("1")->get_device();
|
||||||
floppy_image_device *floppy = ((data & 2) ? floppy1 : floppy0);
|
floppy_image_device *floppy = ((data & 2) ? floppy1 : floppy0);
|
||||||
|
@ -14,17 +14,14 @@
|
|||||||
// MACROS / CONSTANTS
|
// MACROS / CONSTANTS
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
#define VERBOSE_DBG 1
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_DEBUG (1U << 1)
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
do { \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
if(VERBOSE_DBG>=N) \
|
#include "logmacro.h"
|
||||||
{ \
|
|
||||||
if( M ) \
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
logerror("%11.6f: %-24s",machine().time().as_double(),(char*)M ); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
@ -94,14 +91,15 @@ READ8_MEMBER(p1_hdc_device::p1_HDC_r)
|
|||||||
case 8:
|
case 8:
|
||||||
data = m_hdc->read(space, offset & 255);
|
data = m_hdc->read(space, offset & 255);
|
||||||
}
|
}
|
||||||
DBG_LOG(1, "hdc", ("R $%04x == $%02x\n", offset, data));
|
LOG("hdc R $%04x == $%02x\n", offset, data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(p1_hdc_device::p1_HDC_w)
|
WRITE8_MEMBER(p1_hdc_device::p1_HDC_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "hdc", ("W $%04x <- $%02x\n", offset, data));
|
LOG("hdc W $%04x <- $%02x\n", offset, data);
|
||||||
|
|
||||||
switch (offset >> 8)
|
switch (offset >> 8)
|
||||||
{
|
{
|
||||||
case 8:
|
case 8:
|
||||||
|
@ -34,17 +34,17 @@
|
|||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
#include "ec1841.h"
|
#include "ec1841.h"
|
||||||
|
|
||||||
#define VERBOSE_DBG 0 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
do { \
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
if(VERBOSE_DBG>=N) \
|
#define LOG_DEBUG (1U << 2)
|
||||||
{ \
|
|
||||||
logerror("%11.6f at %s: ",machine().time().as_double(),machine().describe_context()); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
|
#include "logmacro.h"
|
||||||
|
|
||||||
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
@ -54,7 +54,6 @@
|
|||||||
#define I8048_TAG "i8048"
|
#define I8048_TAG "i8048"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// DEVICE DEFINITIONS
|
// DEVICE DEFINITIONS
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
@ -327,7 +326,7 @@ void ec_1841_keyboard_device::device_reset()
|
|||||||
|
|
||||||
WRITE_LINE_MEMBER( ec_1841_keyboard_device::clock_write )
|
WRITE_LINE_MEMBER( ec_1841_keyboard_device::clock_write )
|
||||||
{
|
{
|
||||||
DBG_LOG(1,0,( "%s: clock write %d\n", tag(), state));
|
LOG("clock write %d\n", state);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -337,7 +336,7 @@ WRITE_LINE_MEMBER( ec_1841_keyboard_device::clock_write )
|
|||||||
|
|
||||||
WRITE_LINE_MEMBER( ec_1841_keyboard_device::data_write )
|
WRITE_LINE_MEMBER( ec_1841_keyboard_device::data_write )
|
||||||
{
|
{
|
||||||
DBG_LOG(1,0,( "%s: data write %d\n", tag(), state));
|
LOG("data write %d\n", state);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -347,7 +346,7 @@ WRITE_LINE_MEMBER( ec_1841_keyboard_device::data_write )
|
|||||||
|
|
||||||
WRITE8_MEMBER( ec_1841_keyboard_device::bus_w )
|
WRITE8_MEMBER( ec_1841_keyboard_device::bus_w )
|
||||||
{
|
{
|
||||||
DBG_LOG(2,0,( "%s: bus_w %02x\n", tag(), data));
|
LOGDBG("bus_w %02x\n", data);
|
||||||
|
|
||||||
m_bus = data;
|
m_bus = data;
|
||||||
}
|
}
|
||||||
@ -379,7 +378,7 @@ READ8_MEMBER( ec_1841_keyboard_device::p1_r )
|
|||||||
data |= clock_signal();
|
data |= clock_signal();
|
||||||
data |= data_signal() << 1;
|
data |= data_signal() << 1;
|
||||||
|
|
||||||
DBG_LOG(1,0,( "%s: p1_r %02x\n", tag(), data));
|
LOG("p1_r %02x\n", data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -403,7 +402,7 @@ WRITE8_MEMBER( ec_1841_keyboard_device::p1_w )
|
|||||||
6 LED XXX
|
6 LED XXX
|
||||||
7 LED XXX
|
7 LED XXX
|
||||||
*/
|
*/
|
||||||
DBG_LOG(1,0,( "%s: p1_w %02x\n", tag(), data));
|
LOG("p1_w %02x\n", data);
|
||||||
|
|
||||||
m_p1 = data;
|
m_p1 = data;
|
||||||
}
|
}
|
||||||
@ -427,7 +426,7 @@ WRITE8_MEMBER( ec_1841_keyboard_device::p2_w )
|
|||||||
6 XXX CLOCK out 2?
|
6 XXX CLOCK out 2?
|
||||||
7 XXX
|
7 XXX
|
||||||
*/
|
*/
|
||||||
DBG_LOG(1,0,( "%s: p2_w %02x\n", tag(), data));
|
LOG("p2_w %02x\n", data);
|
||||||
|
|
||||||
m_pc_kbdc->data_write_from_kb(BIT(data, 2));
|
m_pc_kbdc->data_write_from_kb(BIT(data, 2));
|
||||||
m_pc_kbdc->clock_write_from_kb(BIT(data, 1));
|
m_pc_kbdc->clock_write_from_kb(BIT(data, 1));
|
||||||
@ -450,7 +449,7 @@ READ_LINE_MEMBER( ec_1841_keyboard_device::t1_r )
|
|||||||
m_q = BIT(sense, (m_bus >> 4) & 7);
|
m_q = BIT(sense, (m_bus >> 4) & 7);
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_LOG(1,0,( "%s: bus %02X t1_r %d\n", tag(), m_bus, m_q));
|
LOG("bus %02X t1_r %d\n", m_bus, m_q);
|
||||||
|
|
||||||
return m_q;
|
return m_q;
|
||||||
}
|
}
|
||||||
|
@ -9,17 +9,17 @@
|
|||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
#include "iskr1030.h"
|
#include "iskr1030.h"
|
||||||
|
|
||||||
#define VERBOSE_DBG 1 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
do { \
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
if(VERBOSE_DBG>=N) \
|
#define LOG_DEBUG (1U << 2)
|
||||||
{ \
|
|
||||||
logerror("%11.6f at %s: ",machine().time().as_double(),machine().describe_context()); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
|
#include "logmacro.h"
|
||||||
|
|
||||||
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
@ -29,7 +29,6 @@
|
|||||||
#define I8048_TAG "i8048"
|
#define I8048_TAG "i8048"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// DEVICE DEFINITIONS
|
// DEVICE DEFINITIONS
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
@ -320,7 +319,7 @@ void iskr_1030_keyboard_device::device_reset()
|
|||||||
|
|
||||||
WRITE_LINE_MEMBER( iskr_1030_keyboard_device::clock_write )
|
WRITE_LINE_MEMBER( iskr_1030_keyboard_device::clock_write )
|
||||||
{
|
{
|
||||||
DBG_LOG(1,0,( "%s: clock write %d\n", tag(), state));
|
LOG("clock write %d\n", state);
|
||||||
m_maincpu->set_input_line(MCS48_INPUT_IRQ, state ? CLEAR_LINE : ASSERT_LINE);
|
m_maincpu->set_input_line(MCS48_INPUT_IRQ, state ? CLEAR_LINE : ASSERT_LINE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -331,7 +330,7 @@ WRITE_LINE_MEMBER( iskr_1030_keyboard_device::clock_write )
|
|||||||
|
|
||||||
WRITE_LINE_MEMBER( iskr_1030_keyboard_device::data_write )
|
WRITE_LINE_MEMBER( iskr_1030_keyboard_device::data_write )
|
||||||
{
|
{
|
||||||
DBG_LOG(1,0,( "%s: data write %d\n", tag(), state));
|
LOG("data write %d\n", state);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -345,12 +344,12 @@ READ_LINE_MEMBER( iskr_1030_keyboard_device::t1_r )
|
|||||||
uint8_t bias = m_p1 & 15;
|
uint8_t bias = m_p1 & 15;
|
||||||
|
|
||||||
if (!BIT(m_p1, 7)) {
|
if (!BIT(m_p1, 7)) {
|
||||||
DBG_LOG(2,0,( "%s: t1_r (l) %d\n", tag(), data));
|
LOGDBG("t1_r (l) %d\n", data);
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bias) {
|
if (bias) {
|
||||||
DBG_LOG(2,0,( "%s: t1_r (b) %d\n", tag(), bias));
|
LOGDBG("t1_r (b) %d\n", bias);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -384,7 +383,7 @@ READ_LINE_MEMBER( iskr_1030_keyboard_device::t1_r )
|
|||||||
}
|
}
|
||||||
data = BIT(data, m_bus&3);
|
data = BIT(data, m_bus&3);
|
||||||
|
|
||||||
DBG_LOG(2,0,( "%s: t1_r (k r%d c%d) %d\n", tag(), m_bus&3, m_bus>>2, data));
|
LOGDBG("t1_r (k r%d c%d) %d\n", m_bus&3, m_bus>>2, data);
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -395,7 +394,7 @@ READ_LINE_MEMBER( iskr_1030_keyboard_device::t1_r )
|
|||||||
|
|
||||||
WRITE8_MEMBER( iskr_1030_keyboard_device::ram_w )
|
WRITE8_MEMBER( iskr_1030_keyboard_device::ram_w )
|
||||||
{
|
{
|
||||||
DBG_LOG(2,0,( "%s: ram_w[%02x] <- %02x\n", tag(), offset, data));
|
LOGDBG("ram_w[%02x] <- %02x\n", offset, data);
|
||||||
|
|
||||||
m_bus = offset;
|
m_bus = offset;
|
||||||
m_ram[offset] = data;
|
m_ram[offset] = data;
|
||||||
@ -408,7 +407,7 @@ WRITE8_MEMBER( iskr_1030_keyboard_device::ram_w )
|
|||||||
|
|
||||||
READ8_MEMBER( iskr_1030_keyboard_device::ram_r )
|
READ8_MEMBER( iskr_1030_keyboard_device::ram_r )
|
||||||
{
|
{
|
||||||
DBG_LOG(2,0,( "%s: ram_r[%02x] = %02x\n", tag(), offset, m_ram[offset]));
|
LOGDBG("ram_r[%02x] = %02x\n", offset, m_ram[offset]);
|
||||||
|
|
||||||
return m_ram[offset];
|
return m_ram[offset];
|
||||||
}
|
}
|
||||||
@ -435,7 +434,7 @@ READ8_MEMBER( iskr_1030_keyboard_device::p1_r )
|
|||||||
|
|
||||||
uint8_t data = 0;
|
uint8_t data = 0;
|
||||||
|
|
||||||
DBG_LOG(1,0,( "%s: p1_r %02x\n", tag(), data));
|
LOG("p1_r %02x\n", data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -459,7 +458,7 @@ WRITE8_MEMBER( iskr_1030_keyboard_device::p2_w )
|
|||||||
6 LED NLK
|
6 LED NLK
|
||||||
7 LED CLK
|
7 LED CLK
|
||||||
*/
|
*/
|
||||||
DBG_LOG(1,0,( "%s: p2_w %02x\n", tag(), data));
|
LOG("p2_w %02x\n", data);
|
||||||
|
|
||||||
m_p2 = data;
|
m_p2 = data;
|
||||||
}
|
}
|
||||||
@ -486,7 +485,7 @@ WRITE8_MEMBER( iskr_1030_keyboard_device::p1_w )
|
|||||||
|
|
||||||
m_p1 = data;
|
m_p1 = data;
|
||||||
|
|
||||||
DBG_LOG(1,0,( "%s: p1_w %02x (c %d d %d bias %d)\n", tag(), data, BIT(data, 4), BIT(data, 5), data&15));
|
LOG("p1_w %02x (c %d d %d bias %d)\n", data, BIT(data, 4), BIT(data, 5), data&15);
|
||||||
|
|
||||||
m_pc_kbdc->data_write_from_kb(BIT(data, 5));
|
m_pc_kbdc->data_write_from_kb(BIT(data, 5));
|
||||||
m_pc_kbdc->clock_write_from_kb(BIT(data, 4));
|
m_pc_kbdc->clock_write_from_kb(BIT(data, 4));
|
||||||
|
@ -29,17 +29,16 @@
|
|||||||
#include "i7220.h"
|
#include "i7220.h"
|
||||||
|
|
||||||
|
|
||||||
#define VERBOSE_DBG 2 /* general debug messages */
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_REGISTER (1U << 1)
|
||||||
|
#define LOG_DEBUG (1U << 2)
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
do { \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
if(VERBOSE_DBG>=N) \
|
#include "logmacro.h"
|
||||||
{ \
|
|
||||||
if( M ) \
|
#define LOGREG(...) LOGMASKED(LOG_REGISTER, __VA_ARGS__)
|
||||||
logerror("%11.6f at %s: %-10s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
// device type definition
|
// device type definition
|
||||||
@ -224,8 +223,8 @@ void i7220_device::start_command(int cmd)
|
|||||||
// NFC bits in BLR MSB must be set to 0001 before issuing this command.
|
// NFC bits in BLR MSB must be set to 0001 before issuing this command.
|
||||||
// MBM GROUP SELECT bits in the AR must select the last MBM in the system.
|
// MBM GROUP SELECT bits in the AR must select the last MBM in the system.
|
||||||
case C_INIT:
|
case C_INIT:
|
||||||
DBG_LOG(1, "BMC", ("INIT: BLR %04x (NFC %d pages %d) AR %04x (MBM %d addr %03x) ER %02d\n",
|
LOG("BMC INIT: BLR %04x (NFC %d pages %d) AR %04x (MBM %d addr %03x) ER %02d\n",
|
||||||
m_blr, blr_nfc, blr_count, m_ar, ar_mbm, ar_addr, m_regs[R_ER]));
|
m_blr, blr_nfc, blr_count, m_ar, ar_mbm, ar_addr, m_regs[R_ER]);
|
||||||
if (blr_nfc != 2)
|
if (blr_nfc != 2)
|
||||||
{
|
{
|
||||||
command_fail_start(bi);
|
command_fail_start(bi);
|
||||||
@ -242,8 +241,8 @@ void i7220_device::start_command(int cmd)
|
|||||||
|
|
||||||
// all parametric registers must be properly set up before issuing Read Bubble Data command
|
// all parametric registers must be properly set up before issuing Read Bubble Data command
|
||||||
case C_READ:
|
case C_READ:
|
||||||
DBG_LOG(1, "BMC", ("RBD: BLR %04x (NFC %d pages %d) AR %04x (MBM %d addr %03x) ER %02d\n",
|
LOG("BMC RBD: BLR %04x (NFC %d pages %d) AR %04x (MBM %d addr %03x) ER %02d\n",
|
||||||
m_blr, blr_nfc, blr_count, m_ar, ar_mbm, ar_addr, m_regs[R_ER]));
|
m_blr, blr_nfc, blr_count, m_ar, ar_mbm, ar_addr, m_regs[R_ER]);
|
||||||
if (ar_mbm >= m_data_size || blr_nfc != 2)
|
if (ar_mbm >= m_data_size || blr_nfc != 2)
|
||||||
{
|
{
|
||||||
command_fail_start(bi);
|
command_fail_start(bi);
|
||||||
@ -255,8 +254,8 @@ void i7220_device::start_command(int cmd)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case C_WRITE:
|
case C_WRITE:
|
||||||
DBG_LOG(1, "BMC", ("WBD: BLR %04x (NFC %d pages %d) AR %04x (MBM %d addr %03x) ER %02d\n",
|
LOG("BMC WBD: BLR %04x (NFC %d pages %d) AR %04x (MBM %d addr %03x) ER %02d\n",
|
||||||
m_blr, blr_nfc, blr_count, m_ar, ar_mbm, ar_addr, m_regs[R_ER]));
|
m_blr, blr_nfc, blr_count, m_ar, ar_mbm, ar_addr, m_regs[R_ER]);
|
||||||
if (ar_mbm >= m_data_size || blr_nfc != 2)
|
if (ar_mbm >= m_data_size || blr_nfc != 2)
|
||||||
{
|
{
|
||||||
command_fail_start(bi);
|
command_fail_start(bi);
|
||||||
@ -339,7 +338,7 @@ void i7220_device::general_continue(bubble_info &bi)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
DBG_LOG(1,"BMC",("general_continue on unknown main-state %d\n", bi.main_state));
|
LOG("BMC general_continue on unknown main-state %d\n", bi.main_state);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -389,7 +388,7 @@ void i7220_device::command_fail_continue(bubble_info &bi)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
DBG_LOG(1,"BMC",("fail unknown sub-state %d\n", bi.sub_state));
|
LOG("BMC fail unknown sub-state %d\n", bi.sub_state);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -423,7 +422,7 @@ void i7220_device::init_continue(bubble_info &bi)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
DBG_LOG(1,"BMC",("init unknown sub-state %d\n", bi.sub_state));
|
LOG("BMC init unknown sub-state %d\n", bi.sub_state);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -463,7 +462,7 @@ void i7220_device::read_fsa_continue(bubble_info &bi)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
DBG_LOG(1,"BMC",("read fsa unknown sub-state %d\n", bi.sub_state));
|
LOG("BMC read fsa unknown sub-state %d\n", bi.sub_state);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -497,7 +496,7 @@ void i7220_device::read_data_continue(bubble_info &bi)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case WAIT_FSA_REPLY:
|
case WAIT_FSA_REPLY:
|
||||||
DBG_LOG(3,"BMC",("read data: ct %02d limit %02d\n", bi.counter, bi.limit));
|
LOGDBG("BMC read data: ct %02d limit %02d\n", bi.counter, bi.limit);
|
||||||
if (bi.counter < bi.limit)
|
if (bi.counter < bi.limit)
|
||||||
{
|
{
|
||||||
for (int a = 0; a < 32; a++)
|
for (int a = 0; a < 32; a++)
|
||||||
@ -515,7 +514,7 @@ void i7220_device::read_data_continue(bubble_info &bi)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
DBG_LOG(1,"BMC",("read data unknown sub-state %d\n", bi.sub_state));
|
LOG("BMC read data unknown sub-state %d\n", bi.sub_state);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -543,7 +542,7 @@ void i7220_device::write_data_continue(bubble_info &bi)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
case WAIT_FIFO:
|
case WAIT_FIFO:
|
||||||
DBG_LOG(3,"BMC",("write data: fifo %02d ct %02d limit %02d\n", m_fifo_size, bi.counter, bi.limit));
|
LOGDBG("BMC write data: fifo %02d ct %02d limit %02d\n", m_fifo_size, bi.counter, bi.limit);
|
||||||
if (m_fifo_size >= 32)
|
if (m_fifo_size >= 32)
|
||||||
{
|
{
|
||||||
for (int a = 0; a < 32; a++)
|
for (int a = 0; a < 32; a++)
|
||||||
@ -565,7 +564,7 @@ void i7220_device::write_data_continue(bubble_info &bi)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
DBG_LOG(1,"BMC",("write data unknown sub-state %d\n", bi.sub_state));
|
LOG("BMC write data unknown sub-state %d\n", bi.sub_state);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -586,14 +585,14 @@ READ8_MEMBER(i7220_device::read)
|
|||||||
if (m_rac)
|
if (m_rac)
|
||||||
{
|
{
|
||||||
data = m_regs[m_rac];
|
data = m_regs[m_rac];
|
||||||
DBG_LOG(2, "BMC", ("R reg @ %02x == %02x\n", m_rac, data));
|
LOGREG("BMC R reg @ %02x == %02x\n", m_rac, data);
|
||||||
m_rac++;
|
m_rac++;
|
||||||
m_rac &= 15;
|
m_rac &= 15;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
data = fifo_pop();
|
data = fifo_pop();
|
||||||
DBG_LOG(2, "BMC", ("R fifo == %02x\n", data));
|
LOGREG("BMC R fifo == %02x\n", data);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -626,8 +625,8 @@ READ8_MEMBER(i7220_device::read)
|
|||||||
data |= SR_FIFO;
|
data |= SR_FIFO;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DBG_LOG(2, "BMC", ("R status == %02x (phase %d state %d:%d fifo %d drq %d)\n",
|
LOGREG("BMC R status == %02x (phase %d state %d:%d fifo %d drq %d)\n",
|
||||||
data, main_phase, bi.main_state, bi.sub_state, m_fifo_size, drq));
|
data, main_phase, bi.main_state, bi.sub_state, m_fifo_size, drq);
|
||||||
if (main_phase == PHASE_RESULT)
|
if (main_phase == PHASE_RESULT)
|
||||||
{
|
{
|
||||||
main_phase = PHASE_IDLE;
|
main_phase = PHASE_IDLE;
|
||||||
@ -635,7 +634,7 @@ READ8_MEMBER(i7220_device::read)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_LOG(3, "BMC", ("R @ %d == %02x\n", offset, data));
|
LOGDBG("BMC R @ %d == %02x\n", offset, data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -665,14 +664,14 @@ WRITE8_MEMBER( i7220_device::write )
|
|||||||
"Software Reset"
|
"Software Reset"
|
||||||
};
|
};
|
||||||
|
|
||||||
DBG_LOG(3, "BMC", ("W @ %d <- %02x\n", offset, data));
|
LOGDBG("BMC W @ %d <- %02x\n", offset, data);
|
||||||
|
|
||||||
switch (offset & 1)
|
switch (offset & 1)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
if (m_rac)
|
if (m_rac)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "BMC", ("W reg @ %02x <- %02x\n", m_rac, data));
|
LOGREG("BMC W reg @ %02x <- %02x\n", m_rac, data);
|
||||||
m_regs[m_rac] = data;
|
m_regs[m_rac] = data;
|
||||||
update_regs();
|
update_regs();
|
||||||
m_rac++;
|
m_rac++;
|
||||||
@ -680,7 +679,7 @@ WRITE8_MEMBER( i7220_device::write )
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "BMC", ("W fifo <- %02x\n", data));
|
LOGREG("BMC W fifo <- %02x\n", data);
|
||||||
fifo_push(data);
|
fifo_push(data);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -695,7 +694,7 @@ WRITE8_MEMBER( i7220_device::write )
|
|||||||
m_cmdr = data & 15;
|
m_cmdr = data & 15;
|
||||||
if (main_phase == PHASE_IDLE)
|
if (main_phase == PHASE_IDLE)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "BMC", ("command %02x '%s'\n", data, commands[m_cmdr]));
|
LOG("BMC command %02x '%s'\n", data, commands[m_cmdr]);
|
||||||
main_phase = PHASE_CMD;
|
main_phase = PHASE_CMD;
|
||||||
start_command(m_cmdr);
|
start_command(m_cmdr);
|
||||||
}
|
}
|
||||||
|
@ -13,18 +13,6 @@
|
|||||||
#include "machine/68230pit.h"
|
#include "machine/68230pit.h"
|
||||||
#include "machine/terminal.h"
|
#include "machine/terminal.h"
|
||||||
|
|
||||||
#define VERBOSE_DBG 1 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
|
||||||
do { \
|
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
|
||||||
if( M ) \
|
|
||||||
logerror("%11.6f at %s: %-24s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
class besta_state : public driver_device
|
class besta_state : public driver_device
|
||||||
{
|
{
|
||||||
@ -62,11 +50,6 @@ READ8_MEMBER( besta_state::mpcc_reg_r )
|
|||||||
{
|
{
|
||||||
uint8_t ret;
|
uint8_t ret;
|
||||||
|
|
||||||
if (!(offset == 0 && !m_mpcc_regs[0])) {
|
|
||||||
DBG_LOG(1,"mpcc_reg_r",("(%d) = %02X at %s\n", offset,
|
|
||||||
(offset > 31 ? -1 : m_mpcc_regs[offset]), machine().describe_context()));
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (offset) {
|
switch (offset) {
|
||||||
case 0: /* r_stat aka ... */
|
case 0: /* r_stat aka ... */
|
||||||
return (m_term_data) ? 0x80 : 0;
|
return (m_term_data) ? 0x80 : 0;
|
||||||
@ -81,8 +64,6 @@ READ8_MEMBER( besta_state::mpcc_reg_r )
|
|||||||
|
|
||||||
WRITE8_MEMBER( besta_state::mpcc_reg_w )
|
WRITE8_MEMBER( besta_state::mpcc_reg_w )
|
||||||
{
|
{
|
||||||
DBG_LOG(1,"mpcc_reg_w",("(%d) <- %02X at %s\n", offset, data, machine().describe_context()));
|
|
||||||
|
|
||||||
switch (offset) {
|
switch (offset) {
|
||||||
case 2:
|
case 2:
|
||||||
kbd_put(data);
|
kbd_put(data);
|
||||||
|
@ -75,17 +75,18 @@
|
|||||||
#define PSG_TAG "psg"
|
#define PSG_TAG "psg"
|
||||||
#define EAROM_TAG "earom"
|
#define EAROM_TAG "earom"
|
||||||
|
|
||||||
#define VERBOSE_DBG 1 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
do { \
|
#define LOG_PIA (1U << 1)
|
||||||
if(VERBOSE_DBG>=N) \
|
#define LOG_DEBUG (1U << 2)
|
||||||
{ \
|
|
||||||
if( M ) \
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
logerror("%11.6f at %s: %-24s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
logerror A; \
|
#include "logmacro.h"
|
||||||
} \
|
|
||||||
} while (0)
|
#define LOGPIA(...) LOGMASKED(LOG_PIA, __VA_ARGS__)
|
||||||
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
|
|
||||||
|
|
||||||
class bitgraph_state : public driver_device
|
class bitgraph_state : public driver_device
|
||||||
{
|
{
|
||||||
@ -222,13 +223,13 @@ DEVICE_INPUT_DEFAULTS_END
|
|||||||
|
|
||||||
READ8_MEMBER(bitgraph_state::pia_r)
|
READ8_MEMBER(bitgraph_state::pia_r)
|
||||||
{
|
{
|
||||||
DBG_LOG(3, "PIA", ("R %d\n", offset));
|
LOGPIA("PIA R %d\n", offset);
|
||||||
return m_pia->read(space, 3 - offset);
|
return m_pia->read(space, 3 - offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(bitgraph_state::pia_w)
|
WRITE8_MEMBER(bitgraph_state::pia_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(3, "PIA", ("W %d < %02X\n", offset, data));
|
LOGPIA("PIA W %d < %02X\n", offset, data);
|
||||||
return m_pia->write(space, 3 - offset, data);
|
return m_pia->write(space, 3 - offset, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -245,13 +246,13 @@ WRITE_LINE_MEMBER(bitgraph_state::pia_cb2_w)
|
|||||||
READ8_MEMBER(bitgraph_state::pia_pa_r)
|
READ8_MEMBER(bitgraph_state::pia_pa_r)
|
||||||
{
|
{
|
||||||
uint8_t data = BIT(m_pia_b, 3) ? m_earom->data() : m_pia_a;
|
uint8_t data = BIT(m_pia_b, 3) ? m_earom->data() : m_pia_a;
|
||||||
DBG_LOG(2, "PIA", ("A == %02X (%s)\n", data, BIT(m_pia_b, 3) ? "earom" : "pia"));
|
LOGDBG("PIA A == %02X (%s)\n", data, BIT(m_pia_b, 3) ? "earom" : "pia");
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(bitgraph_state::pia_pa_w)
|
WRITE8_MEMBER(bitgraph_state::pia_pa_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "PIA", ("A <- %02X\n", data));
|
LOGDBG("PIA A <- %02X\n", data);
|
||||||
m_pia_a = data;
|
m_pia_a = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -267,13 +268,13 @@ WRITE8_MEMBER(bitgraph_state::pia_pa_w)
|
|||||||
*/
|
*/
|
||||||
READ8_MEMBER(bitgraph_state::pia_pb_r)
|
READ8_MEMBER(bitgraph_state::pia_pb_r)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "PIA", ("B == %02X\n", m_pia_b));
|
LOGDBG("PIA B == %02X\n", m_pia_b);
|
||||||
return m_pia_b;
|
return m_pia_b;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(bitgraph_state::pia_pb_w)
|
WRITE8_MEMBER(bitgraph_state::pia_pb_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "PIA", ("B <- %02X\n", data));
|
LOGDBG("PIA B <- %02X\n", data);
|
||||||
m_pia_b = data;
|
m_pia_b = data;
|
||||||
|
|
||||||
switch (m_pia_b & 0x03)
|
switch (m_pia_b & 0x03)
|
||||||
@ -288,7 +289,7 @@ WRITE8_MEMBER(bitgraph_state::pia_pb_w)
|
|||||||
|
|
||||||
if (BIT(m_pia_b, 3))
|
if (BIT(m_pia_b, 3))
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "EAROM", ("data <- %02X\n", m_pia_a));
|
LOGDBG("EAROM data <- %02X\n", m_pia_a);
|
||||||
m_earom->set_data(m_pia_a);
|
m_earom->set_data(m_pia_a);
|
||||||
}
|
}
|
||||||
// CS1, ~CS2, C1, C2
|
// CS1, ~CS2, C1, C2
|
||||||
@ -303,14 +304,14 @@ WRITE8_MEMBER(bitgraph_state::pia_pb_w)
|
|||||||
|
|
||||||
WRITE8_MEMBER(bitgraph_state::earom_write)
|
WRITE8_MEMBER(bitgraph_state::earom_write)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "EAROM", ("addr <- %02X (%02X)\n", data & 0x3f, data));
|
LOGDBG("EAROM addr <- %02X (%02X)\n", data & 0x3f, data);
|
||||||
m_earom->set_address(data & 0x3f);
|
m_earom->set_address(data & 0x3f);
|
||||||
}
|
}
|
||||||
|
|
||||||
// written once and never changed
|
// written once and never changed
|
||||||
WRITE8_MEMBER(bitgraph_state::misccr_write)
|
WRITE8_MEMBER(bitgraph_state::misccr_write)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "MISCCR", ("<- %02X (DTR %d MAP %d)\n", data, BIT(data, 3), (data & 3)));
|
LOG("MISCCR <- %02X (DTR %d MAP %d)\n", data, BIT(data, 3), (data & 3));
|
||||||
m_misccr = data;
|
m_misccr = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -335,7 +336,7 @@ WRITE_LINE_MEMBER(bitgraph_state::system_clock_write)
|
|||||||
// rev B writes EE5E -- 9600 HOST, 9600 PNT, 300 KBD, 9600 DBG
|
// rev B writes EE5E -- 9600 HOST, 9600 PNT, 300 KBD, 9600 DBG
|
||||||
WRITE16_MEMBER(bitgraph_state::baud_write)
|
WRITE16_MEMBER(bitgraph_state::baud_write)
|
||||||
{
|
{
|
||||||
DBG_LOG(1,"Baud", ("%04X\n", data));
|
LOG("Baud %04X\n", data);
|
||||||
m_dbrgb->str_w(data & 15); // 2 DBG
|
m_dbrgb->str_w(data & 15); // 2 DBG
|
||||||
m_dbrga->stt_w((data >> 4) & 15); // 1 KBD
|
m_dbrga->stt_w((data >> 4) & 15); // 1 KBD
|
||||||
m_dbrgb->stt_w((data >> 8) & 15); // 3 PNT
|
m_dbrgb->stt_w((data >> 8) & 15); // 3 PNT
|
||||||
@ -371,13 +372,13 @@ WRITE_LINE_MEMBER(bitgraph_state::com8116_b_ft_w)
|
|||||||
|
|
||||||
READ8_MEMBER(bitgraph_state::adlc_r)
|
READ8_MEMBER(bitgraph_state::adlc_r)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "ADLC", ("R %d\n", offset));
|
LOG("ADLC R %d\n", offset);
|
||||||
return m_adlc ? m_adlc->read(space, 3 - offset) : 0xff;
|
return m_adlc ? m_adlc->read(space, 3 - offset) : 0xff;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(bitgraph_state::adlc_w)
|
WRITE8_MEMBER(bitgraph_state::adlc_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "ADLC", ("W %d < %02X\n", offset, data));
|
LOG("ADLC W %d < %02X\n", offset, data);
|
||||||
if (m_adlc) return m_adlc->write(space, 3 - offset, data);
|
if (m_adlc) return m_adlc->write(space, 3 - offset, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -421,13 +422,13 @@ uint32_t bitgraph_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
|
|||||||
READ8_MEMBER(bitgraph_state::ppu_read)
|
READ8_MEMBER(bitgraph_state::ppu_read)
|
||||||
{
|
{
|
||||||
uint8_t data = m_ppu[offset];
|
uint8_t data = m_ppu[offset];
|
||||||
DBG_LOG(2, "PPU", ("%d == %02X\n", offset, data));
|
LOGDBG("PPU %d == %02X\n", offset, data);
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(bitgraph_state::ppu_write)
|
WRITE8_MEMBER(bitgraph_state::ppu_write)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "PPU", ("%d <- %02X\n", offset, data));
|
LOGDBG("PPU %d <- %02X\n", offset, data);
|
||||||
m_ppu[offset] = data;
|
m_ppu[offset] = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -446,7 +447,7 @@ void bitgraph_state::ppu_io(address_map &map)
|
|||||||
*/
|
*/
|
||||||
WRITE8_MEMBER(bitgraph_state::ppu_i8243_w)
|
WRITE8_MEMBER(bitgraph_state::ppu_i8243_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "PPU", ("8243 %d <- %02X\n", offset + 4, data));
|
LOG("PPU 8243 %d <- %02X\n", offset + 4, data);
|
||||||
switch (offset)
|
switch (offset)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
|
@ -78,17 +78,16 @@ ksm|DVK KSM,
|
|||||||
#define KSM_STATUSLINE_VRAM 0xF8B0
|
#define KSM_STATUSLINE_VRAM 0xF8B0
|
||||||
|
|
||||||
|
|
||||||
#define VERBOSE_DBG 0 /* general debug messages */
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
|
#define LOG_DEBUG (1U << 2)
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
do { \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
if(VERBOSE_DBG>=N) \
|
#include "logmacro.h"
|
||||||
{ \
|
|
||||||
if( M ) \
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
logerror("%11.6f at %s: %-24s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
class ksm_state : public driver_device
|
class ksm_state : public driver_device
|
||||||
@ -250,7 +249,7 @@ void ksm_state::video_start()
|
|||||||
|
|
||||||
WRITE8_MEMBER(ksm_state::ksm_ppi_porta_w)
|
WRITE8_MEMBER(ksm_state::ksm_ppi_porta_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "PPI port A", ("line %d\n", data));
|
LOG("PPI port A line %d\n", data);
|
||||||
m_video.line = data;
|
m_video.line = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -258,7 +257,7 @@ WRITE8_MEMBER(ksm_state::ksm_ppi_portc_w)
|
|||||||
{
|
{
|
||||||
brgc = (data >> 5) & 3;
|
brgc = (data >> 5) & 3;
|
||||||
|
|
||||||
DBG_LOG(1, "PPI port C", ("raw %02x blink %d speed %d\n", data, BIT(data, 7), brgc));
|
LOG("PPI port C raw %02x blink %d speed %d\n", data, BIT(data, 7), brgc);
|
||||||
|
|
||||||
update_brg(brga, brgb, brgc);
|
update_brg(brga, brgb, brgc);
|
||||||
}
|
}
|
||||||
@ -283,7 +282,7 @@ WRITE_LINE_MEMBER(ksm_state::write_brgb)
|
|||||||
|
|
||||||
void ksm_state::update_brg(bool a, bool b, int c)
|
void ksm_state::update_brg(bool a, bool b, int c)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "brg", ("%d %d %d\n", a, b, c));
|
LOGDBG("brg %d %d %d\n", a, b, c);
|
||||||
|
|
||||||
if (a && b) return;
|
if (a && b) return;
|
||||||
|
|
||||||
@ -371,9 +370,8 @@ TIMER_DEVICE_CALLBACK_MEMBER(ksm_state::scanline_callback)
|
|||||||
uint16_t y = m_screen->vpos();
|
uint16_t y = m_screen->vpos();
|
||||||
uint16_t offset;
|
uint16_t offset;
|
||||||
|
|
||||||
DBG_LOG(2,"scanline_cb",
|
LOGDBG("scanline_cb addr %02x frame %d x %.4d y %.3d row %.2d\n",
|
||||||
("addr %02x frame %d x %.4d y %.3d row %.2d\n",
|
m_video.line, (int)m_screen->frame_number(), m_screen->hpos(), y, y%11);
|
||||||
m_video.line, (int)m_screen->frame_number(), m_screen->hpos(), y, y%11));
|
|
||||||
|
|
||||||
if (y < KSM_VERT_START) return;
|
if (y < KSM_VERT_START) return;
|
||||||
y -= KSM_VERT_START;
|
y -= KSM_VERT_START;
|
||||||
|
@ -18,20 +18,21 @@
|
|||||||
#include "machine/ram.h"
|
#include "machine/ram.h"
|
||||||
#include "softlist.h"
|
#include "softlist.h"
|
||||||
|
|
||||||
|
|
||||||
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
|
#define LOG_DEBUG (1U << 2)
|
||||||
|
|
||||||
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
|
#include "logmacro.h"
|
||||||
|
|
||||||
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
|
|
||||||
|
|
||||||
#define EC1841_MEMBOARD_SIZE (512*1024)
|
#define EC1841_MEMBOARD_SIZE (512*1024)
|
||||||
|
|
||||||
#define VERBOSE_DBG 1 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
|
||||||
do { \
|
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
|
||||||
if( M ) \
|
|
||||||
logerror("%11.6f at %s: %-24s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
class ec184x_state : public driver_device
|
class ec184x_state : public driver_device
|
||||||
{
|
{
|
||||||
@ -98,7 +99,7 @@ READ8_MEMBER(ec184x_state::memboard_r)
|
|||||||
data = 0xff;
|
data = 0xff;
|
||||||
else
|
else
|
||||||
data = m_memory.enable[data];
|
data = m_memory.enable[data];
|
||||||
DBG_LOG(1, "ec1841_memboard", ("R (%d of %d) == %02X\n", offset + 1, m_memory.boards, data));
|
LOG("ec1841_memboard R (%d of %d) == %02X\n", offset + 1, m_memory.boards, data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -108,7 +109,7 @@ WRITE8_MEMBER(ec184x_state::memboard_w)
|
|||||||
address_space &program = m_maincpu->space(AS_PROGRAM);
|
address_space &program = m_maincpu->space(AS_PROGRAM);
|
||||||
uint8_t current = m_memory.enable[offset];
|
uint8_t current = m_memory.enable[offset];
|
||||||
|
|
||||||
DBG_LOG(1, "ec1841_memboard", ("W (%d of %d) <- %02X (%02X)\n", offset + 1, m_memory.boards, data, current));
|
LOG("ec1841_memboard W (%d of %d) <- %02X (%02X)\n", offset + 1, m_memory.boards, data, current);
|
||||||
|
|
||||||
if (offset >= m_memory.boards)
|
if (offset >= m_memory.boards)
|
||||||
{
|
{
|
||||||
@ -119,14 +120,14 @@ WRITE8_MEMBER(ec184x_state::memboard_w)
|
|||||||
{
|
{
|
||||||
// disable read access
|
// disable read access
|
||||||
program.unmap_read(0, EC1841_MEMBOARD_SIZE - 1);
|
program.unmap_read(0, EC1841_MEMBOARD_SIZE - 1);
|
||||||
DBG_LOG(1, "ec1841_memboard_w", ("unmap_read(%d)\n", offset));
|
LOG("ec1841_memboard_w unmap_read(%d)\n", offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (BIT(current, 3) && !BIT(data, 3))
|
if (BIT(current, 3) && !BIT(data, 3))
|
||||||
{
|
{
|
||||||
// disable write access
|
// disable write access
|
||||||
program.unmap_write(0, EC1841_MEMBOARD_SIZE - 1);
|
program.unmap_write(0, EC1841_MEMBOARD_SIZE - 1);
|
||||||
DBG_LOG(1, "ec1841_memboard_w", ("unmap_write(%d)\n", offset));
|
LOG("ec1841_memboard_w unmap_write(%d)\n", offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!BIT(current, 2) && BIT(data, 2))
|
if (!BIT(current, 2) && BIT(data, 2))
|
||||||
@ -136,7 +137,7 @@ WRITE8_MEMBER(ec184x_state::memboard_w)
|
|||||||
// enable read access
|
// enable read access
|
||||||
membank("bank10")->set_base(m_ram->pointer() + offset * EC1841_MEMBOARD_SIZE);
|
membank("bank10")->set_base(m_ram->pointer() + offset * EC1841_MEMBOARD_SIZE);
|
||||||
program.install_read_bank(0, EC1841_MEMBOARD_SIZE - 1, "bank10");
|
program.install_read_bank(0, EC1841_MEMBOARD_SIZE - 1, "bank10");
|
||||||
DBG_LOG(1, "ec1841_memboard_w", ("map_read(%d)\n", offset));
|
LOG("ec1841_memboard_w map_read(%d)\n", offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!BIT(current, 3) && BIT(data, 3))
|
if (!BIT(current, 3) && BIT(data, 3))
|
||||||
@ -146,7 +147,7 @@ WRITE8_MEMBER(ec184x_state::memboard_w)
|
|||||||
// enable write access
|
// enable write access
|
||||||
membank("bank20")->set_base(m_ram->pointer() + offset * EC1841_MEMBOARD_SIZE);
|
membank("bank20")->set_base(m_ram->pointer() + offset * EC1841_MEMBOARD_SIZE);
|
||||||
program.install_write_bank(0, EC1841_MEMBOARD_SIZE - 1, "bank20");
|
program.install_write_bank(0, EC1841_MEMBOARD_SIZE - 1, "bank20");
|
||||||
DBG_LOG(1, "ec1841_memboard_w", ("map_write(%d)\n", offset));
|
LOG("ec1841_memboard_w map_write(%d)\n", offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_memory.enable[offset] = data;
|
m_memory.enable[offset] = data;
|
||||||
|
@ -51,17 +51,16 @@
|
|||||||
#define VC_DISP_VERT 256
|
#define VC_DISP_VERT 256
|
||||||
|
|
||||||
|
|
||||||
#define VERBOSE_DBG 2 /* general debug messages */
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
|
#define LOG_DEBUG (1U << 2)
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
do { \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
if(VERBOSE_DBG>=N) \
|
#include "logmacro.h"
|
||||||
{ \
|
|
||||||
if( M ) \
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
logerror("%11.6f at %s: %-10s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
class eurocom2_state : public driver_device
|
class eurocom2_state : public driver_device
|
||||||
@ -172,7 +171,7 @@ READ8_MEMBER(eurocom2_state::fdc_aux_r)
|
|||||||
data |= (m_fdc->intrq_r() << 6);
|
data |= (m_fdc->intrq_r() << 6);
|
||||||
data |= (m_fdc->drq_r() << 7);
|
data |= (m_fdc->drq_r() << 7);
|
||||||
|
|
||||||
DBG_LOG(3, "Floppy", ("%d == %02x\n", offset, data));
|
LOGDBG("Floppy %d == %02x\n", offset, data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -212,12 +211,12 @@ WRITE8_MEMBER(eurocom2_state::fdc_aux_w)
|
|||||||
|
|
||||||
m_fdc->dden_w(BIT(data, 5));
|
m_fdc->dden_w(BIT(data, 5));
|
||||||
|
|
||||||
DBG_LOG(3, "Floppy", ("%d <- %02x\n", offset, data));
|
LOGDBG("Floppy %d <- %02x\n", offset, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(eurocom2_state::vico_w)
|
WRITE8_MEMBER(eurocom2_state::vico_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "VICO", ("%d <- %02x\n", offset, data));
|
LOG("VICO %d <- %02x\n", offset, data);
|
||||||
|
|
||||||
m_vico[offset & 1] = data;
|
m_vico[offset & 1] = data;
|
||||||
}
|
}
|
||||||
@ -225,21 +224,21 @@ WRITE8_MEMBER(eurocom2_state::vico_w)
|
|||||||
|
|
||||||
READ_LINE_MEMBER(eurocom2_state::pia1_ca2_r)
|
READ_LINE_MEMBER(eurocom2_state::pia1_ca2_r)
|
||||||
{
|
{
|
||||||
DBG_LOG(3, "PIA1", ("CA2 == %d (SST Q14)\n", m_sst_state));
|
LOGDBG("PIA1 CA2 == %d (SST Q14)\n", m_sst_state);
|
||||||
|
|
||||||
return m_sst_state;
|
return m_sst_state;
|
||||||
}
|
}
|
||||||
|
|
||||||
READ_LINE_MEMBER(eurocom2_state::pia1_cb1_r)
|
READ_LINE_MEMBER(eurocom2_state::pia1_cb1_r)
|
||||||
{
|
{
|
||||||
DBG_LOG(3, "PIA1", ("CB1 == %d (SST Q6)\n", m_sst_state));
|
LOGDBG("PIA1 CB1 == %d (SST Q6)\n", m_sst_state);
|
||||||
|
|
||||||
return m_sst_state;
|
return m_sst_state;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE_LINE_MEMBER(eurocom2_state::pia1_cb2_w)
|
WRITE_LINE_MEMBER(eurocom2_state::pia1_cb2_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "PIA1", ("CB2 <- %d (SST reset)\n", state));
|
LOG("PIA1 CB2 <- %d (SST reset)\n", state);
|
||||||
// reset single-step timer
|
// reset single-step timer
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -82,17 +82,16 @@
|
|||||||
#include "speaker.h"
|
#include "speaker.h"
|
||||||
|
|
||||||
|
|
||||||
#define VERBOSE_DBG 1
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
|
#define LOG_DEBUG (1U << 2)
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
do { \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
if(VERBOSE_DBG>=N) \
|
#include "logmacro.h"
|
||||||
{ \
|
|
||||||
if( M ) \
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
logerror("%11.6f at %s: %-10s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
#define I80130_TAG "osp"
|
#define I80130_TAG "osp"
|
||||||
@ -166,7 +165,7 @@ READ16_MEMBER(gridcomp_state::grid_9ff0_r)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_LOG(1, "9FF0", ("%02x == %02x\n", 0x9ff00 + (offset << 1), data));
|
LOGDBG("9FF0: %02x == %02x\n", 0x9ff00 + (offset << 1), data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -189,14 +188,14 @@ READ16_MEMBER(gridcomp_state::grid_keyb_r)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_LOG(1, "Keyb", ("%02x == %02x\n", 0xdffc0 + (offset << 1), data));
|
LOGKBD("%02x == %02x\n", 0xdffc0 + (offset << 1), data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE16_MEMBER(gridcomp_state::grid_keyb_w)
|
WRITE16_MEMBER(gridcomp_state::grid_keyb_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "Keyb", ("%02x <- %02x\n", 0xdffc0 + (offset << 1), data));
|
LOGKBD("%02x <- %02x\n", 0xdffc0 + (offset << 1), data);
|
||||||
}
|
}
|
||||||
|
|
||||||
void gridcomp_state::kbd_put(u16 data)
|
void gridcomp_state::kbd_put(u16 data)
|
||||||
@ -224,7 +223,7 @@ READ16_MEMBER(gridcomp_state::grid_gpib_r)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_LOG(1, "GPIB", ("%02x == %02x\n", 0xdff80 + (offset << 1), data));
|
LOG("GPIB %02x == %02x\n", 0xdff80 + (offset << 1), data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -238,7 +237,7 @@ WRITE16_MEMBER(gridcomp_state::grid_gpib_w)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_LOG(1, "GPIB", ("%02x <- %02x\n", 0xdff80 + (offset << 1), data));
|
LOG("GPIB %02x <- %02x\n", 0xdff80 + (offset << 1), data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -292,15 +291,12 @@ uint32_t gridcomp_state::screen_update_113x(screen_device &screen, bitmap_ind16
|
|||||||
|
|
||||||
void gridcomp_state::init_gridcomp()
|
void gridcomp_state::init_gridcomp()
|
||||||
{
|
{
|
||||||
DBG_LOG(0, "init", ("driver_init()\n"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MACHINE_START_MEMBER(gridcomp_state, gridcomp)
|
MACHINE_START_MEMBER(gridcomp_state, gridcomp)
|
||||||
{
|
{
|
||||||
address_space &program = m_maincpu->space(AS_PROGRAM);
|
address_space &program = m_maincpu->space(AS_PROGRAM);
|
||||||
|
|
||||||
DBG_LOG(0, "init", ("machine_start()\n"));
|
|
||||||
|
|
||||||
program.install_readwrite_bank(0, m_ram->size() - 1, "bank10");
|
program.install_readwrite_bank(0, m_ram->size() - 1, "bank10");
|
||||||
membank("bank10")->set_base(m_ram->pointer());
|
membank("bank10")->set_base(m_ram->pointer());
|
||||||
|
|
||||||
@ -309,8 +305,6 @@ MACHINE_START_MEMBER(gridcomp_state, gridcomp)
|
|||||||
|
|
||||||
MACHINE_RESET_MEMBER(gridcomp_state, gridcomp)
|
MACHINE_RESET_MEMBER(gridcomp_state, gridcomp)
|
||||||
{
|
{
|
||||||
DBG_LOG(0, "init", ("machine_reset()\n"));
|
|
||||||
|
|
||||||
m_kbd_ready = false;
|
m_kbd_ready = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -109,20 +109,19 @@ Displaywriter System Manual S544-2023-0 (?) -- mentioned in US patents 4648071 a
|
|||||||
#define UPD765_TAG "upd765"
|
#define UPD765_TAG "upd765"
|
||||||
|
|
||||||
|
|
||||||
#define VERBOSE_DBG 2 /* general debug messages */
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
|
#define LOG_DEBUG (1U << 2)
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
do { \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
if(VERBOSE_DBG>=N) \
|
#include "logmacro.h"
|
||||||
{ \
|
|
||||||
if( M ) \
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
logerror("%11.6f at %s: %-10s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
uint8_t gfx_expand[16] = {
|
const uint8_t gfx_expand[16] = {
|
||||||
0x00, 0x03, 0x0c, 0x0f,
|
0x00, 0x03, 0x0c, 0x0f,
|
||||||
0x30, 0x33, 0x3c, 0x3f,
|
0x30, 0x33, 0x3c, 0x3f,
|
||||||
0xc0, 0xc3, 0xcc, 0xcf,
|
0xc0, 0xc3, 0xcc, 0xcf,
|
||||||
@ -225,7 +224,7 @@ private:
|
|||||||
|
|
||||||
WRITE8_MEMBER(ibm6580_state::p40_w)
|
WRITE8_MEMBER(ibm6580_state::p40_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"___", ("%02x <- %02x\n", 0x40 + (offset << 1), data));
|
LOG("___ %02x <- %02x\n", 0x40 + (offset << 1), data);
|
||||||
|
|
||||||
switch (offset)
|
switch (offset)
|
||||||
{
|
{
|
||||||
@ -281,14 +280,14 @@ READ8_MEMBER(ibm6580_state::p40_r)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_LOG(3,"___", ("%02x == %02x\n", 0x40 + (offset << 1), data));
|
LOGDBG("___ %02x == %02x\n", 0x40 + (offset << 1), data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(ibm6580_state::video_w)
|
WRITE8_MEMBER(ibm6580_state::video_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"Video", ("%02x <- %02x\n", 0xe000 + (offset << 1), data));
|
LOG("Video %02x <- %02x\n", 0xe000 + (offset << 1), data);
|
||||||
|
|
||||||
switch (offset)
|
switch (offset)
|
||||||
{
|
{
|
||||||
@ -320,7 +319,7 @@ READ8_MEMBER(ibm6580_state::video_r)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (offset != 8)
|
if (offset != 8)
|
||||||
DBG_LOG(2,"Video", ("%02x == %02x\n", 0xe000 + (offset << 1), data));
|
LOG("Video %02x == %02x\n", 0xe000 + (offset << 1), data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -336,7 +335,7 @@ WRITE_LINE_MEMBER(ibm6580_state::vblank_w)
|
|||||||
|
|
||||||
WRITE16_MEMBER(ibm6580_state::pic_latch_w)
|
WRITE16_MEMBER(ibm6580_state::pic_latch_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"PIC", ("latch <- %02x\n", data));
|
LOG("PIC latch <- %02x\n", data);
|
||||||
|
|
||||||
if (data)
|
if (data)
|
||||||
m_p40 |= 8;
|
m_p40 |= 8;
|
||||||
@ -353,7 +352,7 @@ WRITE16_MEMBER(ibm6580_state::pic_latch_w)
|
|||||||
|
|
||||||
WRITE16_MEMBER(ibm6580_state::unk_latch_w)
|
WRITE16_MEMBER(ibm6580_state::unk_latch_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"UNK", ("latch <- %02x\n", data));
|
LOG("UNK latch <- %02x\n", data);
|
||||||
|
|
||||||
m_p40 |= 0x10;
|
m_p40 |= 0x10;
|
||||||
}
|
}
|
||||||
@ -422,7 +421,7 @@ WRITE8_MEMBER(ibm6580_state::led_w)
|
|||||||
|
|
||||||
WRITE8_MEMBER(ibm6580_state::ppi_c_w)
|
WRITE8_MEMBER(ibm6580_state::ppi_c_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"PPI", ("Port C <- %02x\n", data));
|
LOG("PPI Port C <- %02x\n", data);
|
||||||
|
|
||||||
// bit 5 -- acknowledge
|
// bit 5 -- acknowledge
|
||||||
// bit 6 -- reset
|
// bit 6 -- reset
|
||||||
@ -442,7 +441,7 @@ READ8_MEMBER(ibm6580_state::ppi_c_r)
|
|||||||
|
|
||||||
data |= (m_kb_strobe << 3);
|
data |= (m_kb_strobe << 3);
|
||||||
|
|
||||||
DBG_LOG(3,"PPI", ("Port C == %02x\n", data));
|
LOGDBG("PPI Port C == %02x\n", data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -451,7 +450,7 @@ READ8_MEMBER(ibm6580_state::ppi_a_r)
|
|||||||
{
|
{
|
||||||
uint8_t data = m_kb_fifo.dequeue();
|
uint8_t data = m_kb_fifo.dequeue();
|
||||||
|
|
||||||
DBG_LOG(2,"PPI", ("Port A == %02x (fifo full: %d)\n", data, m_kb_fifo.full()));
|
LOG("PPI Port A == %02x (fifo full: %d)\n", data, m_kb_fifo.full());
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
@ -472,7 +471,7 @@ WRITE_LINE_MEMBER(ibm6580_state::kb_strobe_w)
|
|||||||
m_kb_strobe = !state;
|
m_kb_strobe = !state;
|
||||||
if (!state && BIT(m_ppi_c, 0)) {
|
if (!state && BIT(m_ppi_c, 0)) {
|
||||||
m_kb_fifo.enqueue(m_kb_data);
|
m_kb_fifo.enqueue(m_kb_data);
|
||||||
DBG_LOG(1,"Kbd", ("enqueue %02x (fifo full: %d, m_ppi_c %02x)\n", m_kb_data, m_kb_fifo.full(), m_ppi_c));
|
LOGKBD("Kbd enqueue %02x (fifo full: %d, m_ppi_c %02x)\n", m_kb_data, m_kb_fifo.full(), m_ppi_c);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -519,7 +518,7 @@ uint8_t ibm6580_state::floppy_mcu_command()
|
|||||||
{
|
{
|
||||||
uint8_t data = 0, command = m_floppy_mcu_cr.dequeue(), i;
|
uint8_t data = 0, command = m_floppy_mcu_cr.dequeue(), i;
|
||||||
|
|
||||||
DBG_LOG(2,"Floppy", ("mcu_command %02x\n", command));
|
LOG("Floppy mcu_command %02x\n", command);
|
||||||
|
|
||||||
m_floppy_mcu_sr.clear();
|
m_floppy_mcu_sr.clear();
|
||||||
m_floppy_idle = true;
|
m_floppy_idle = true;
|
||||||
@ -604,7 +603,7 @@ uint8_t ibm6580_state::floppy_mcu_command()
|
|||||||
|
|
||||||
WRITE8_MEMBER(ibm6580_state::floppy_w)
|
WRITE8_MEMBER(ibm6580_state::floppy_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"Floppy", ("%02x <- %02x\n", 0x8150 + (offset << 1), data));
|
LOG("Floppy %02x <- %02x\n", 0x8150 + (offset << 1), data);
|
||||||
|
|
||||||
switch (offset)
|
switch (offset)
|
||||||
{
|
{
|
||||||
@ -661,22 +660,20 @@ READ8_MEMBER(ibm6580_state::floppy_r)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (offset)
|
if (offset)
|
||||||
DBG_LOG(2,"Floppy", ("%02x == %02x\n", 0x8150 + (offset << 1), data));
|
LOG("Floppy %02x == %02x\n", 0x8150 + (offset << 1), data);
|
||||||
else {
|
else {
|
||||||
floppy_image_device *f = m_flop0->get_device();
|
floppy_image_device *f = m_flop0->get_device();
|
||||||
|
|
||||||
if (f)
|
if (f)
|
||||||
DBG_LOG(2,"Floppy", ("%02x == %02x (empty %d hdl %d + idle %d irq %d drq %d + dskchg %d idx %d cyl %d)\n",
|
LOG("Floppy %02x == %02x (empty %d hdl %d + idle %d irq %d drq %d + dskchg %d idx %d cyl %d)\n",
|
||||||
0x8150 + (offset << 1), data,
|
0x8150 + (offset << 1), data,
|
||||||
m_floppy_mcu_sr.empty(), m_floppy_hdl,
|
m_floppy_mcu_sr.empty(), m_floppy_hdl,
|
||||||
m_floppy_idle, m_fdc->get_irq(), m_fdc->get_drq(),
|
m_floppy_idle, m_fdc->get_irq(), m_fdc->get_drq(),
|
||||||
f->dskchg_r(), f->idx_r(), f->get_cyl()
|
f->dskchg_r(), f->idx_r(), f->get_cyl());
|
||||||
));
|
|
||||||
else
|
else
|
||||||
DBG_LOG(2,"Floppy", ("%02x == %02x (idle %d irq %d drq %d)\n",
|
LOG("Floppy %02x == %02x (idle %d irq %d drq %d)\n",
|
||||||
0x8150 + (offset << 1), data,
|
0x8150 + (offset << 1), data,
|
||||||
m_floppy_idle, m_fdc->get_irq(), m_fdc->get_drq()
|
m_floppy_idle, m_fdc->get_irq(), m_fdc->get_drq());
|
||||||
));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
#include "machine/ram.h"
|
#include "machine/ram.h"
|
||||||
#include "softlist.h"
|
#include "softlist.h"
|
||||||
|
|
||||||
#define DBG_LOG(a,b,c)
|
|
||||||
|
|
||||||
class iskr103x_state : public driver_device
|
class iskr103x_state : public driver_device
|
||||||
{
|
{
|
||||||
|
@ -41,26 +41,27 @@
|
|||||||
#include "speaker.h"
|
#include "speaker.h"
|
||||||
|
|
||||||
|
|
||||||
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
|
#define LOG_DEBUG (1U << 2)
|
||||||
|
|
||||||
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
|
#include "logmacro.h"
|
||||||
|
|
||||||
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
|
|
||||||
|
|
||||||
#define CGA_PALETTE_SETS 83
|
#define CGA_PALETTE_SETS 83
|
||||||
/* one for colour, one for mono, 81 for colour composite */
|
/* one for colour, one for mono, 81 for colour composite */
|
||||||
|
|
||||||
#define BG_COLOR(x) (((x)&7) | (((x)&0x10) >> 1))
|
#define BG_COLOR(x) (((x)&7) | (((x)&0x10) >> 1))
|
||||||
|
|
||||||
#define VERBOSE_DBG 0
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
|
||||||
do { \
|
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
|
||||||
if( M ) \
|
|
||||||
logerror("%11.6f at %s: %-10s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
#define POISK1_UPDATE_ROW(name) \
|
#define POISK1_UPDATE_ROW(name) \
|
||||||
void name(bitmap_rgb32 &bitmap, const rectangle &cliprect, uint8_t *videoram, uint16_t ma, uint8_t ra, uint8_t stride)
|
void name(bitmap_rgb32 &bitmap, const rectangle &cliprect, uint8_t *videoram, uint16_t ma, uint8_t ra, uint8_t stride)
|
||||||
|
|
||||||
|
|
||||||
class p1_state : public driver_device
|
class p1_state : public driver_device
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -167,21 +168,21 @@ private:
|
|||||||
READ8_MEMBER(p1_state::p1_trap_r)
|
READ8_MEMBER(p1_state::p1_trap_r)
|
||||||
{
|
{
|
||||||
uint8_t data = m_video.trap[offset];
|
uint8_t data = m_video.trap[offset];
|
||||||
DBG_LOG(1, "trap", ("R %.2x $%02x\n", 0x28 + offset, data));
|
LOG("trap R %.2x $%02x\n", 0x28 + offset, data);
|
||||||
if (offset == 0) m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
|
if (offset == 0) m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(p1_state::p1_trap_w)
|
WRITE8_MEMBER(p1_state::p1_trap_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "trap", ("W %.2x $%02x\n", 0x28 + offset, data));
|
LOG("trap W %.2x $%02x\n", 0x28 + offset, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(p1_state::p1_cga_r)
|
READ8_MEMBER(p1_state::p1_cga_r)
|
||||||
{
|
{
|
||||||
uint16_t port = offset + 0x3d0;
|
uint16_t port = offset + 0x3d0;
|
||||||
|
|
||||||
DBG_LOG(1, "cga", ("R %.4x\n", port));
|
LOG("cga R %.4x\n", port);
|
||||||
m_video.trap[1] = 0x40 | ((port >> 8) & 0x3f);
|
m_video.trap[1] = 0x40 | ((port >> 8) & 0x3f);
|
||||||
m_video.trap[0] = port & 255;
|
m_video.trap[0] = port & 255;
|
||||||
m_maincpu->set_input_line(INPUT_LINE_NMI, ASSERT_LINE);
|
m_maincpu->set_input_line(INPUT_LINE_NMI, ASSERT_LINE);
|
||||||
@ -192,7 +193,7 @@ WRITE8_MEMBER(p1_state::p1_cga_w)
|
|||||||
{
|
{
|
||||||
uint16_t port = offset + 0x3d0;
|
uint16_t port = offset + 0x3d0;
|
||||||
|
|
||||||
DBG_LOG(1, "cga", ("W %.4x $%02x\n", port, data));
|
LOG("cga W %.4x $%02x\n", port, data);
|
||||||
m_video.trap[2] = data;
|
m_video.trap[2] = data;
|
||||||
m_video.trap[1] = 0xC0 | ((port >> 8) & 0x3f);
|
m_video.trap[1] = 0xC0 | ((port >> 8) & 0x3f);
|
||||||
m_video.trap[0] = port & 255;
|
m_video.trap[0] = port & 255;
|
||||||
@ -201,7 +202,7 @@ WRITE8_MEMBER(p1_state::p1_cga_w)
|
|||||||
|
|
||||||
WRITE8_MEMBER(p1_state::p1_vram_w)
|
WRITE8_MEMBER(p1_state::p1_vram_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "vram", ("W %.4x $%02x\n", offset, data));
|
LOG("vram W %.4x $%02x\n", offset, data);
|
||||||
if (m_video.videoram_base) m_video.videoram_base[offset] = data;
|
if (m_video.videoram_base) m_video.videoram_base[offset] = data;
|
||||||
m_video.trap[2] = data;
|
m_video.trap[2] = data;
|
||||||
m_video.trap[1] = 0x80 | ((offset >> 8) & 0x3f);
|
m_video.trap[1] = 0x80 | ((offset >> 8) & 0x3f);
|
||||||
@ -223,7 +224,7 @@ WRITE8_MEMBER(p1_state::p1_ppi2_porta_w)
|
|||||||
{
|
{
|
||||||
address_space &program = m_maincpu->space(AS_PROGRAM);
|
address_space &program = m_maincpu->space(AS_PROGRAM);
|
||||||
|
|
||||||
DBG_LOG(1, "color_select_68", ("W $%02x\n", data));
|
LOG("color_select_68 W $%02x\n", data);
|
||||||
|
|
||||||
// NMI DISABLE
|
// NMI DISABLE
|
||||||
if (BIT((data ^ m_video.color_select_68), 3))
|
if (BIT((data ^ m_video.color_select_68), 3))
|
||||||
@ -266,7 +267,7 @@ WRITE8_MEMBER(p1_state::p1_ppi2_porta_w)
|
|||||||
|
|
||||||
WRITE8_MEMBER(p1_state::p1_ppi_portc_w)
|
WRITE8_MEMBER(p1_state::p1_ppi_portc_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "mode_control_6a", ("W $%02x\n", data));
|
LOG("mode_control_6a W $%02x\n", data);
|
||||||
|
|
||||||
m_video.mode_control_6a = data;
|
m_video.mode_control_6a = data;
|
||||||
set_palette_luts();
|
set_palette_luts();
|
||||||
@ -324,7 +325,7 @@ POISK1_UPDATE_ROW(p1_state::cga_gfx_2bpp_update_row)
|
|||||||
uint16_t odd, offset;
|
uint16_t odd, offset;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (ra == 0) DBG_LOG(1, "cga_gfx_2bpp_update_row", ("\n"));
|
if (ra == 0) LOG("cga_gfx_2bpp_update_row\n");
|
||||||
odd = (ra & 1) << 13;
|
odd = (ra & 1) << 13;
|
||||||
offset = (ma & 0x1fff) | odd;
|
offset = (ma & 0x1fff) | odd;
|
||||||
for (i = 0; i < stride; i++)
|
for (i = 0; i < stride; i++)
|
||||||
@ -352,7 +353,7 @@ POISK1_UPDATE_ROW(p1_state::cga_gfx_1bpp_update_row)
|
|||||||
uint16_t odd, offset;
|
uint16_t odd, offset;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (ra == 0) DBG_LOG(1, "cga_gfx_1bpp_update_row", ("bg %d\n", bg));
|
if (ra == 0) LOG("cga_gfx_1bpp_update_row bg %d\n", bg);
|
||||||
odd = (ra & 1) << 13;
|
odd = (ra & 1) << 13;
|
||||||
offset = (ma & 0x1fff) | odd;
|
offset = (ma & 0x1fff) | odd;
|
||||||
for (i = 0; i < stride; i++)
|
for (i = 0; i < stride; i++)
|
||||||
@ -384,7 +385,7 @@ POISK1_UPDATE_ROW(p1_state::poisk1_gfx_1bpp_update_row)
|
|||||||
uint16_t odd, offset;
|
uint16_t odd, offset;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (ra == 0) DBG_LOG(1, "poisk1_gfx_1bpp_update_row", ("bg %d\n", bg));
|
if (ra == 0) LOG("poisk1_gfx_1bpp_update_row bg %d\n", bg);
|
||||||
odd = (ra & 1) << 13;
|
odd = (ra & 1) << 13;
|
||||||
offset = (ma & 0x1fff) | odd;
|
offset = (ma & 0x1fff) | odd;
|
||||||
for (i = 0; i < stride; i++)
|
for (i = 0; i < stride; i++)
|
||||||
@ -406,8 +407,6 @@ POISK1_UPDATE_ROW(p1_state::poisk1_gfx_1bpp_update_row)
|
|||||||
// Initialise the cga palette
|
// Initialise the cga palette
|
||||||
void p1_state::p1_palette(palette_device &palette) const
|
void p1_state::p1_palette(palette_device &palette) const
|
||||||
{
|
{
|
||||||
DBG_LOG(0, "init", ("palette_init()\n"));
|
|
||||||
|
|
||||||
for (int i = 0; i < CGA_PALETTE_SETS * 16; i++)
|
for (int i = 0; i < CGA_PALETTE_SETS * 16; i++)
|
||||||
palette.set_pen_color(i, cga_palette[i][0], cga_palette[i][1], cga_palette[i][2]);
|
palette.set_pen_color(i, cga_palette[i][0], cga_palette[i][1], cga_palette[i][2]);
|
||||||
}
|
}
|
||||||
@ -416,8 +415,6 @@ void p1_state::video_start()
|
|||||||
{
|
{
|
||||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||||
|
|
||||||
DBG_LOG(0, "init", ("video_start()\n"));
|
|
||||||
|
|
||||||
memset(&m_video, 0, sizeof(m_video));
|
memset(&m_video, 0, sizeof(m_video));
|
||||||
m_video.videoram_base = std::make_unique<uint8_t[]>(0x8000);
|
m_video.videoram_base = std::make_unique<uint8_t[]>(0x8000);
|
||||||
m_video.videoram = m_video.videoram_base.get();
|
m_video.videoram = m_video.videoram_base.get();
|
||||||
@ -478,7 +475,7 @@ WRITE_LINE_MEMBER(p1_state::p1_pit8253_out2_changed)
|
|||||||
WRITE8_MEMBER(p1_state::p1_ppi_porta_w)
|
WRITE8_MEMBER(p1_state::p1_ppi_porta_w)
|
||||||
{
|
{
|
||||||
m_kbpoll_mask = data;
|
m_kbpoll_mask = data;
|
||||||
DBG_LOG(2, "p1_ppi_porta_w", ("( %02X -> %02X )\n", data, m_kbpoll_mask));
|
LOGDBG("p1_ppi_porta_w %02X <- %02X\n", m_kbpoll_mask, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(p1_state::p1_ppi_porta_r)
|
READ8_MEMBER(p1_state::p1_ppi_porta_r)
|
||||||
@ -486,7 +483,7 @@ READ8_MEMBER(p1_state::p1_ppi_porta_r)
|
|||||||
uint8_t ret;
|
uint8_t ret;
|
||||||
|
|
||||||
ret = m_kbpoll_mask;
|
ret = m_kbpoll_mask;
|
||||||
DBG_LOG(1, "p1_ppi_porta_r", ("= %02X\n", ret));
|
LOG("p1_ppi_porta_r = %02X\n", ret);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -504,7 +501,7 @@ READ8_MEMBER(p1_state::p1_ppi_portb_r)
|
|||||||
}
|
}
|
||||||
|
|
||||||
ret = key & 0xff;
|
ret = key & 0xff;
|
||||||
// DBG_LOG(1,"p1_ppi_portb_r",("= %02X\n", ret));
|
// LOG("p1_ppi_portb_r = %02X\n", ret);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -522,7 +519,7 @@ READ8_MEMBER(p1_state::p1_ppi_portc_r)
|
|||||||
}
|
}
|
||||||
|
|
||||||
ret = (key >> 8) & 0xff;
|
ret = (key >> 8) & 0xff;
|
||||||
DBG_LOG(2,"p1_ppi_portc_r",("= %02X\n", ret));
|
LOGDBG("p1_ppi_portc_r = %02X\n", ret);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -535,7 +532,7 @@ READ8_MEMBER(p1_state::p1_ppi2_portc_r)
|
|||||||
|
|
||||||
data = (data & ~0x10) | (tap_val < 0 ? 0x10 : 0x00);
|
data = (data & ~0x10) | (tap_val < 0 ? 0x10 : 0x00);
|
||||||
|
|
||||||
DBG_LOG(2, "p1_ppi_portc_r", ("= %02X (tap_val %f) at %s\n", data, tap_val, machine().describe_context()));
|
LOGDBG("p1_ppi_portc_r = %02X (tap_val %f) at %s\n", data, tap_val, machine().describe_context());
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -562,7 +559,7 @@ READ8_MEMBER(p1_state::p1_ppi_r)
|
|||||||
case 3:
|
case 3:
|
||||||
return m_ppi8255n2->read(offset);
|
return m_ppi8255n2->read(offset);
|
||||||
default:
|
default:
|
||||||
DBG_LOG(1, "p1ppi", ("R %.2x (unimp)\n", 0x60 + offset));
|
LOG("p1ppi R %.2x (unimp)\n", 0x60 + offset);
|
||||||
return 0xff;
|
return 0xff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -584,7 +581,7 @@ WRITE8_MEMBER(p1_state::p1_ppi_w)
|
|||||||
case 3:
|
case 3:
|
||||||
return m_ppi8255n2->write(offset, data);
|
return m_ppi8255n2->write(offset, data);
|
||||||
default:
|
default:
|
||||||
DBG_LOG(1, "p1ppi", ("W %.2x $%02x (unimp)\n", 0x60 + offset, data));
|
LOG("p1ppi W %.2x $%02x (unimp)\n", 0x60 + offset, data);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -599,21 +596,16 @@ void p1_state::init_poisk1()
|
|||||||
{
|
{
|
||||||
address_space &program = m_maincpu->space(AS_PROGRAM);
|
address_space &program = m_maincpu->space(AS_PROGRAM);
|
||||||
|
|
||||||
DBG_LOG(0, "init", ("driver_init()\n"));
|
|
||||||
|
|
||||||
program.install_readwrite_bank(0, m_ram->size() - 1, "bank10");
|
program.install_readwrite_bank(0, m_ram->size() - 1, "bank10");
|
||||||
membank("bank10")->set_base(m_ram->pointer());
|
membank("bank10")->set_base(m_ram->pointer());
|
||||||
}
|
}
|
||||||
|
|
||||||
void p1_state::machine_start()
|
void p1_state::machine_start()
|
||||||
{
|
{
|
||||||
DBG_LOG(0, "init", ("machine_start()\n"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void p1_state::machine_reset()
|
void p1_state::machine_reset()
|
||||||
{
|
{
|
||||||
DBG_LOG(0, "init", ("machine_reset()\n"));
|
|
||||||
|
|
||||||
m_kbpoll_mask = 0;
|
m_kbpoll_mask = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -49,17 +49,16 @@
|
|||||||
#include "softlist.h"
|
#include "softlist.h"
|
||||||
|
|
||||||
|
|
||||||
#define VERBOSE_DBG 1 /* general debug messages */
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_KEYBOARD (1U << 1)
|
||||||
|
#define LOG_DEBUG (1U << 2)
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define VERBOSE (LOG_DEBUG)
|
||||||
do { \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
if(VERBOSE_DBG>=N) \
|
#include "logmacro.h"
|
||||||
{ \
|
|
||||||
if( M ) \
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
logerror("%11.6f at %s: %-10s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
class tosh1000_state : public driver_device
|
class tosh1000_state : public driver_device
|
||||||
@ -119,7 +118,7 @@ MACHINE_RESET_MEMBER(tosh1000_state, tosh1000)
|
|||||||
|
|
||||||
WRITE8_MEMBER(tosh1000_state::romdos_bank_w)
|
WRITE8_MEMBER(tosh1000_state::romdos_bank_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"ROM-DOS", ("<- %02x (%s, accessing bank %d)\n", data, BIT(data, 7)?"enable":"disable", data&7));
|
LOGDBG("ROM-DOS <- %02x (%s, accessing bank %d)\n", data, BIT(data, 7)?"enable":"disable", data&7);
|
||||||
|
|
||||||
if (BIT(data, 7))
|
if (BIT(data, 7))
|
||||||
{
|
{
|
||||||
@ -133,14 +132,14 @@ WRITE8_MEMBER(tosh1000_state::romdos_bank_w)
|
|||||||
|
|
||||||
WRITE8_MEMBER(tosh1000_state::bram_w)
|
WRITE8_MEMBER(tosh1000_state::bram_w)
|
||||||
{
|
{
|
||||||
DBG_LOG(2, "BRAM", ("%02x <- %02x\n", 0xc0 + offset, data));
|
LOGDBG("BRAM %02x <- %02x\n", 0xc0 + offset, data);
|
||||||
|
|
||||||
switch (offset)
|
switch (offset)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
if (m_bram_latch)
|
if (m_bram_latch)
|
||||||
{
|
{
|
||||||
DBG_LOG(1, "Backup RAM", ("%02x <- %02x\n", m_bram_offset % 160, data));
|
LOG("Backup RAM %02x <- %02x\n", m_bram_offset % 160, data);
|
||||||
m_bram->write(m_bram_offset % 160, data);
|
m_bram->write(m_bram_offset % 160, data);
|
||||||
m_bram_offset++;
|
m_bram_offset++;
|
||||||
}
|
}
|
||||||
@ -188,7 +187,7 @@ READ8_MEMBER(tosh1000_state::bram_r)
|
|||||||
if (m_bram_state == READ_DATA)
|
if (m_bram_state == READ_DATA)
|
||||||
{
|
{
|
||||||
data = m_bram->read(m_bram_offset % 160);
|
data = m_bram->read(m_bram_offset % 160);
|
||||||
DBG_LOG(1, "BRAM", ("@ %02x == %02x\n", m_bram_offset % 160, data));
|
LOG("BRAM @ %02x == %02x\n", m_bram_offset % 160, data);
|
||||||
m_bram_offset++;
|
m_bram_offset++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -212,7 +211,7 @@ READ8_MEMBER(tosh1000_state::bram_r)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_LOG(2, "BRAM", ("%02x == %02x\n", 0xc0 + offset, data));
|
LOGDBG("BRAM %02x == %02x\n", 0xc0 + offset, data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
@ -23,17 +23,6 @@
|
|||||||
#include "screen.h"
|
#include "screen.h"
|
||||||
|
|
||||||
|
|
||||||
#define VERBOSE_DBG 0 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
|
||||||
do { \
|
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
|
||||||
logerror("%11.6f at %s: ",machine().time().as_double(),machine().describe_context()); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
class vt240_state : public driver_device
|
class vt240_state : public driver_device
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -3,17 +3,15 @@
|
|||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
#include "ibm6580_fdc.h"
|
#include "ibm6580_fdc.h"
|
||||||
|
|
||||||
#define VERBOSE_DBG 2 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
do { \
|
#define LOG_DEBUG (1U << 1)
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
//#define VERBOSE (LOG_GENERAL | LOG_DEBUG)
|
||||||
if( M ) \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
logerror("%11.6f at %s: %-10s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
#include "logmacro.h"
|
||||||
logerror A; \
|
|
||||||
} \
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
} while (0)
|
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(DW_FDC, dw_fdc_device, "dw_fdc", "IBM Displaywriter Floppy")
|
DEFINE_DEVICE_TYPE(DW_FDC, dw_fdc_device, "dw_fdc", "IBM Displaywriter Floppy")
|
||||||
@ -80,35 +78,35 @@ WRITE8_MEMBER( dw_fdc_device::p1_w )
|
|||||||
{
|
{
|
||||||
m_p1 = data;
|
m_p1 = data;
|
||||||
|
|
||||||
DBG_LOG(2,"p1",( "<- %02x\n", data, m_p1));
|
LOGDBG("p1 <- %02x\n", data, m_p1);
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER( dw_fdc_device::p2_w )
|
WRITE8_MEMBER( dw_fdc_device::p2_w )
|
||||||
{
|
{
|
||||||
m_p2 = data;
|
m_p2 = data;
|
||||||
|
|
||||||
DBG_LOG(2,"p2",( "<- %02x\n", data));
|
LOGDBG("p2 <- %02x\n", data);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER( dw_fdc_device::p2_r )
|
READ8_MEMBER( dw_fdc_device::p2_r )
|
||||||
{
|
{
|
||||||
uint8_t data = m_p2;
|
uint8_t data = m_p2;
|
||||||
|
|
||||||
DBG_LOG(2,"p2",( "== %02x\n", data));
|
LOGDBG("p2 == %02x\n", data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
READ_LINE_MEMBER( dw_fdc_device::t0_r )
|
READ_LINE_MEMBER( dw_fdc_device::t0_r )
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"t0",( "== %d\n", m_t0));
|
LOGDBG("t0 == %d\n", m_t0);
|
||||||
|
|
||||||
return m_t0;
|
return m_t0;
|
||||||
}
|
}
|
||||||
|
|
||||||
READ_LINE_MEMBER( dw_fdc_device::t1_r )
|
READ_LINE_MEMBER( dw_fdc_device::t1_r )
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"t1",( "== %d\n", m_t1));
|
LOGDBG("t1 == %d\n", m_t1);
|
||||||
|
|
||||||
return m_t1;
|
return m_t1;
|
||||||
}
|
}
|
||||||
|
@ -3,17 +3,17 @@
|
|||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
#include "ibm6580_kbd.h"
|
#include "ibm6580_kbd.h"
|
||||||
|
|
||||||
#define VERBOSE_DBG 0 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
do { \
|
#define LOG_DEBUG (1U << 1)
|
||||||
if(VERBOSE_DBG>=N) \
|
#define LOG_KEYBOARD (1U << 2)
|
||||||
{ \
|
|
||||||
if( M ) \
|
//#define VERBOSE (LOG_GENERAL | LOG_DEBUG)
|
||||||
logerror("%11.6f at %s: %-10s",machine().time().as_double(),machine().describe_context(),(char*)M ); \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
logerror A; \
|
#include "logmacro.h"
|
||||||
} \
|
|
||||||
} while (0)
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
|
#define LOGKBD(...) LOGMASKED(LOG_KEYBOARD, __VA_ARGS__)
|
||||||
|
|
||||||
|
|
||||||
DEFINE_DEVICE_TYPE(DW_KEYBOARD, dw_keyboard_device, "dw_kbd", "IBM Displaywriter Keyboard")
|
DEFINE_DEVICE_TYPE(DW_KEYBOARD, dw_keyboard_device, "dw_kbd", "IBM Displaywriter Keyboard")
|
||||||
@ -210,7 +210,7 @@ WRITE8_MEMBER( dw_keyboard_device::p1_w )
|
|||||||
{
|
{
|
||||||
m_drive = data;
|
m_drive = data;
|
||||||
|
|
||||||
DBG_LOG(2,"p1",( "<- %02x = drive %04x\n", data, m_drive));
|
LOGDBG("p1 <- %02x = drive %04x\n", data, m_drive);
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER( dw_keyboard_device::p2_w )
|
WRITE8_MEMBER( dw_keyboard_device::p2_w )
|
||||||
@ -222,28 +222,28 @@ WRITE8_MEMBER( dw_keyboard_device::p2_w )
|
|||||||
m_p2 = data;
|
m_p2 = data;
|
||||||
m_drive = ((data & 0xf0) << 4);
|
m_drive = ((data & 0xf0) << 4);
|
||||||
|
|
||||||
DBG_LOG(2,"p2",( "<- %02x = drive %04x sense row %d\n", data, m_drive, data & 7));
|
LOGDBG("p2 <- %02x = drive %04x sense row %d\n", data, m_drive, data & 7);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER( dw_keyboard_device::p2_r )
|
READ8_MEMBER( dw_keyboard_device::p2_r )
|
||||||
{
|
{
|
||||||
uint8_t data = m_p2;
|
uint8_t data = m_p2;
|
||||||
|
|
||||||
DBG_LOG(2,"p2",( "== %02x\n", data));
|
LOGDBG("p2 == %02x\n", data);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
READ_LINE_MEMBER( dw_keyboard_device::t0_r )
|
READ_LINE_MEMBER( dw_keyboard_device::t0_r )
|
||||||
{
|
{
|
||||||
DBG_LOG(3,"t0",( "== %d\n", m_ack));
|
LOGKBD("t0 == %d\n", m_ack);
|
||||||
|
|
||||||
return m_ack;
|
return m_ack;
|
||||||
}
|
}
|
||||||
|
|
||||||
READ_LINE_MEMBER( dw_keyboard_device::t1_r )
|
READ_LINE_MEMBER( dw_keyboard_device::t1_r )
|
||||||
{
|
{
|
||||||
DBG_LOG(2,"t1",( "== %d\n", m_keylatch));
|
LOGDBG("t1 == %d\n", m_keylatch);
|
||||||
|
|
||||||
return m_keylatch;
|
return m_keylatch;
|
||||||
}
|
}
|
||||||
@ -266,8 +266,8 @@ WRITE8_MEMBER( dw_keyboard_device::bus_w )
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
if ((data & 0x72) != 0x72)
|
if ((data & 0x72) != 0x72)
|
||||||
DBG_LOG(1,"bus",( "<- %02x = send %d strobe %d clock %d | dip clk %d dip load %d\n",
|
LOG("bus <- %02x = send %d strobe %d clock %d | dip clk %d dip load %d\n",
|
||||||
data, BIT(data, 0), BIT(data, 1), BIT(data, 4), BIT(data, 5), BIT(data, 6)));
|
data, BIT(data, 0), BIT(data, 1), BIT(data, 4), BIT(data, 5), BIT(data, 6));
|
||||||
|
|
||||||
m_bus = data;
|
m_bus = data;
|
||||||
|
|
||||||
@ -284,12 +284,12 @@ WRITE8_MEMBER( dw_keyboard_device::bus_w )
|
|||||||
}
|
}
|
||||||
m_keylatch = BIT(sense, m_sense);
|
m_keylatch = BIT(sense, m_sense);
|
||||||
if (m_keylatch)
|
if (m_keylatch)
|
||||||
DBG_LOG(1,"bus",("key %02x pressed (drive %04x sense %x)\n", (i << 3) | m_sense, m_drive, m_sense));
|
LOG("bus key %02x pressed (drive %04x sense %x)\n", (i << 3) | m_sense, m_drive, m_sense);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!BIT(data, 6)) {
|
if (!BIT(data, 6)) {
|
||||||
m_dip = ~ioport("DIP")->read();
|
m_dip = ~ioport("DIP")->read();
|
||||||
DBG_LOG(1,"bus",("loaded DIP switch setting 0x%02x\n", m_dip));
|
LOG("bus loaded DIP switch setting 0x%02x\n", m_dip);
|
||||||
m_mcu->set_input_line(MCS48_INPUT_IRQ, m_dip & 1 ? ASSERT_LINE : CLEAR_LINE);
|
m_mcu->set_input_line(MCS48_INPUT_IRQ, m_dip & 1 ? ASSERT_LINE : CLEAR_LINE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,16 +11,16 @@
|
|||||||
#include "km035.h"
|
#include "km035.h"
|
||||||
#include "speaker.h"
|
#include "speaker.h"
|
||||||
|
|
||||||
#define VERBOSE_DBG 0 /* general debug messages */
|
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
do { \
|
#define LOG_DEBUG (1U << 1)
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
//#define VERBOSE (LOG_GENERAL | LOG_DEBUG)
|
||||||
logerror("%11.6f at %s: ",machine().time().as_double(),machine().describe_context()); \
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
logerror A; \
|
#include "logmacro.h"
|
||||||
} \
|
|
||||||
} while (0)
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// MACROS / CONSTANTS
|
// MACROS / CONSTANTS
|
||||||
@ -292,7 +292,7 @@ void km035_device::device_reset()
|
|||||||
|
|
||||||
WRITE_LINE_MEMBER( km035_device::write_rxd )
|
WRITE_LINE_MEMBER( km035_device::write_rxd )
|
||||||
{
|
{
|
||||||
DBG_LOG(1,0,("write_rxd %d\n", state));
|
LOG("write_rxd %d\n", state);
|
||||||
m_maincpu->set_input_line(MCS48_INPUT_IRQ, state ? CLEAR_LINE : ASSERT_LINE);
|
m_maincpu->set_input_line(MCS48_INPUT_IRQ, state ? CLEAR_LINE : ASSERT_LINE);
|
||||||
m_rx = state;
|
m_rx = state;
|
||||||
}
|
}
|
||||||
@ -317,20 +317,20 @@ WRITE8_MEMBER( km035_device::p1_w )
|
|||||||
6 Matrix row bit 2
|
6 Matrix row bit 2
|
||||||
7 Matrix row bit 3
|
7 Matrix row bit 3
|
||||||
*/
|
*/
|
||||||
DBG_LOG(2,0,( "p1_w %02x = row %d col %d tx %d\n", data, (data>>4)&15, data&7, !BIT(data, 3)));
|
LOGDBG("p1_w %02x = row %d col %d tx %d\n", data, (data>>4)&15, data&7, !BIT(data, 3));
|
||||||
m_p1 = data;
|
m_p1 = data;
|
||||||
|
|
||||||
sense = m_kbd[(data>>4) & 15]->read();
|
sense = m_kbd[(data>>4) & 15]->read();
|
||||||
m_keylatch = BIT(sense, (data & 7));
|
m_keylatch = BIT(sense, (data & 7));
|
||||||
if (m_keylatch)
|
if (m_keylatch)
|
||||||
DBG_LOG(1,0,( "keypress at row %d col %d\n", (data>>4)&15, data&7));
|
LOG("keypress at row %d col %d\n", (data>>4)&15, data&7);
|
||||||
|
|
||||||
m_tx_handler(!BIT(data, 3));
|
m_tx_handler(!BIT(data, 3));
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER( km035_device::p2_w )
|
WRITE8_MEMBER( km035_device::p2_w )
|
||||||
{
|
{
|
||||||
DBG_LOG(2,0,( "p2_w %02x\n", data ));
|
LOGDBG("p2_w %02x\n", data);
|
||||||
|
|
||||||
m_p2 = data;
|
m_p2 = data;
|
||||||
}
|
}
|
||||||
@ -351,7 +351,7 @@ READ8_MEMBER( km035_device::p2_r )
|
|||||||
|
|
||||||
WRITE8_MEMBER( km035_device::bus_w )
|
WRITE8_MEMBER( km035_device::bus_w )
|
||||||
{
|
{
|
||||||
DBG_LOG(2,0,( "bus_w %02x\n", data));
|
LOGDBG("bus_w %02x\n", data);
|
||||||
}
|
}
|
||||||
|
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
@ -13,16 +13,15 @@
|
|||||||
#include "speaker.h"
|
#include "speaker.h"
|
||||||
|
|
||||||
|
|
||||||
#define VERBOSE_DBG 1 /* general debug messages */
|
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
|
||||||
|
#define LOG_DEBUG (1U << 1)
|
||||||
|
|
||||||
|
//#define VERBOSE (LOG_GENERAL | LOG_DEBUG)
|
||||||
|
//#define LOG_OUTPUT_FUNC printf
|
||||||
|
#include "logmacro.h"
|
||||||
|
|
||||||
|
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
|
||||||
|
|
||||||
#define DBG_LOG(N,M,A) \
|
|
||||||
do { \
|
|
||||||
if(VERBOSE_DBG>=N) \
|
|
||||||
{ \
|
|
||||||
logerror("%11.6f at %s: ",machine().time().as_double(),machine().describe_context()); \
|
|
||||||
logerror A; \
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// MACROS / CONSTANTS
|
// MACROS / CONSTANTS
|
||||||
@ -406,7 +405,7 @@ WRITE8_MEMBER( ms7004_device::p1_w )
|
|||||||
6
|
6
|
||||||
7 Serial TX
|
7 Serial TX
|
||||||
*/
|
*/
|
||||||
DBG_LOG(2,0,( "%s: p1_w %02x = send %d\n", tag(), data, BIT(data, 7)));
|
LOGDBG("p1_w %02x = send %d\n", data, BIT(data, 7));
|
||||||
|
|
||||||
m_p1 = data;
|
m_p1 = data;
|
||||||
m_tx_handler(BIT(data, 7));
|
m_tx_handler(BIT(data, 7));
|
||||||
@ -431,7 +430,7 @@ WRITE8_MEMBER( ms7004_device::p2_w )
|
|||||||
6 LED "Caps"
|
6 LED "Caps"
|
||||||
7 LED "Hold"
|
7 LED "Hold"
|
||||||
*/
|
*/
|
||||||
DBG_LOG(2,0,( "p2_w %02x = col %d\n", data, data&15));
|
LOGDBG("p2_w %02x = col %d\n", data, data&15);
|
||||||
|
|
||||||
m_p2 = data;
|
m_p2 = data;
|
||||||
m_i8243->p2_w(data);
|
m_i8243->p2_w(data);
|
||||||
@ -447,7 +446,7 @@ void ms7004_device::i8243_port_w(uint8_t data)
|
|||||||
{
|
{
|
||||||
int sense = 0;
|
int sense = 0;
|
||||||
|
|
||||||
DBG_LOG(2,0,( "8243 port %d data %02xH\n", P + 4, data));
|
LOGDBG("8243 port %d data %02xH\n", P + 4, data);
|
||||||
|
|
||||||
if (data) {
|
if (data) {
|
||||||
switch(data) {
|
switch(data) {
|
||||||
@ -458,8 +457,8 @@ void ms7004_device::i8243_port_w(uint8_t data)
|
|||||||
}
|
}
|
||||||
m_keylatch = BIT(sense, (m_p1 & 7));
|
m_keylatch = BIT(sense, (m_p1 & 7));
|
||||||
if (m_keylatch)
|
if (m_keylatch)
|
||||||
DBG_LOG(1,0,( "row %d col %02x t1 %d\n",
|
LOG("row %d col %02x t1 %d\n",
|
||||||
(m_p1 & 7), (P << 4 | data), m_keylatch));
|
(m_p1 & 7), (P << 4 | data), m_keylatch);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user