コード例 #1
0
ファイル: c64cia2.c プロジェクト: bobsummerwill/VICE
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
ファイル: c64parallel.c プロジェクト: AreaScout/vice
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
ファイル: c64parallel.c プロジェクト: martinpiper/VICE
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
ファイル: c64parallel.c プロジェクト: martinpiper/VICE
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
ファイル: c64parallel.c プロジェクト: AreaScout/vice
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
ファイル: c64parallel.c プロジェクト: AreaScout/vice
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
ファイル: c64parallel.c プロジェクト: martinpiper/VICE
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
ファイル: c64dtvcia2.c プロジェクト: bobsummerwill/VICE
static void read_ciaicr(cia_context_t *cia_context)
{
    parallel_cable_cpu_execute(DRIVE_PC_STANDARD);
}
コード例 #9
0
ファイル: c64cia2.c プロジェクト: martinpiper/VICE
static void read_ciaicr(cia_context_t *cia_context)
{
    parallel_cable_cpu_execute();
}