Пример #1
0
static void read_ciaicr(cia_context_t *cia_context)
{
    if (burst_mod == BURST_MOD_CIA2) {
        drivecpu_execute_all(maincpu_clk);
    }
    parallel_cable_cpu_execute(DRIVE_PC_STANDARD);
}
Пример #2
0
void parallel_cable_cpu_pulse(int type)
{
    unsigned int dnr;

    parallel_cable_cpu_execute(type);

    DBG(("PARCABLE (%d:%d) CPU Pulse", type, portmap[type]));

    for (dnr = 0; dnr < DRIVE_NUM; dnr++) {
        drive_t *drive;

        drive = drive_context[dnr]->drive;

        if (drive->enable && drive->parallel_cable) {
            switch (drive->parallel_cable) {
                case DRIVE_PC_DD3:
                    dd3_set_signal(drive_context[dnr]);
                    break;
                case DRIVE_PC_FORMEL64:
                    viacore_signal(drive_context[dnr]->via1d1541, VIA_SIG_CB1, VIA_SIG_FALL);
                    break;
                default:
                    if (drive->type == DRIVE_TYPE_1570 ||
                        drive->type == DRIVE_TYPE_1571 ||
                        drive->type == DRIVE_TYPE_1571CR) {
                        ciacore_set_flag(drive_context[dnr]->cia1571);
                    } else {
                        viacore_signal(drive_context[dnr]->via1d1541, VIA_SIG_CB1, VIA_SIG_FALL);
                    }
                    break;
            }
        }
    }
}
Пример #3
0
void parallel_cable_cpu_pulse(void)
{
    unsigned int dnr;

    parallel_cable_cpu_execute();

#if 0
    log_debug("CP");
#endif

    for (dnr = 0; dnr < DRIVE_NUM; dnr++) {
        drive_t *drive;

        drive = drive_context[dnr]->drive;

        if (drive->enable && drive->parallel_cable) {
            if (drive->parallel_cable == DRIVE_PC_DD3)
                mc6821_set_signal(drive_context[dnr], MC6821_SIG_CA1);
            else if (drive->type == DRIVE_TYPE_1570
                || drive->type == DRIVE_TYPE_1571
                || drive->type == DRIVE_TYPE_1571CR)
                ciacore_set_flag(drive_context[dnr]->cia1571);
            else
                viacore_signal(drive_context[dnr]->via1d1541, VIA_SIG_CB1,
                               VIA_SIG_FALL);
        }
    }
}
Пример #4
0
void parallel_cable_cpu_write(BYTE data)
{
    parallel_cable_cpu_execute();

    parallel_cable_cpu_value = data;

#if 0
    log_debug("CW DATA %02x", data);
#endif
}
Пример #5
0
void parallel_cable_cpu_write(int type, BYTE data)
{
    int port;

    port = portmap[type];
    parallel_cable_cpu_execute(type);

    parallel_cable_cpu_value[port] = data;

    DBG(("PARCABLE (%d:%d) CPU W DATA %02x", type, port, data));
}
Пример #6
0
BYTE parallel_cable_cpu_read(int type)
{
    BYTE rc;

    parallel_cable_cpu_execute(type);

    rc = parallel_cable_value(type);

    DBG(("PARCABLE (%d:%d) CPU R %02x", type, portmap[type], rc));

    return rc;
}
Пример #7
0
BYTE parallel_cable_cpu_read(void)
{
    BYTE rc;

    parallel_cable_cpu_execute();

    rc = parallel_cable_value();

#if 0
    log_debug("CR %02x", rc);
#endif

    return rc;
}
Пример #8
0
static void read_ciaicr(cia_context_t *cia_context)
{
    parallel_cable_cpu_execute(DRIVE_PC_STANDARD);
}
Пример #9
0
static void read_ciaicr(cia_context_t *cia_context)
{
    parallel_cable_cpu_execute();
}