static int pp_write(CBM_FILE fd, unsigned char c1, unsigned char c2) { SETSTATEDEBUG((void)0); #ifndef USE_CBM_IEC_WAIT while(!cbm_iec_get(fd, IEC_DATA)); #else cbm_iec_wait(fd, IEC_DATA, 1); #endif SETSTATEDEBUG((void)0); cbm_pp_write(fd, c1); SETSTATEDEBUG((void)0); cbm_iec_release(fd, IEC_CLOCK); SETSTATEDEBUG((void)0); #ifndef USE_CBM_IEC_WAIT while(cbm_iec_get(fd, IEC_DATA)); #else cbm_iec_wait(fd, IEC_DATA, 0); #endif SETSTATEDEBUG((void)0); cbm_pp_write(fd, c2); SETSTATEDEBUG((void)0); cbm_iec_set(fd, IEC_CLOCK); SETSTATEDEBUG((void)0); #ifndef USE_CBM_IEC_WAIT while(!cbm_iec_get(fd, IEC_DATA)); #else cbm_iec_wait(fd, IEC_DATA, 1); #endif SETSTATEDEBUG((void)0); return 0; }
static int pp_write(CBM_FILE fd, char c1, char c2) { pp_check_direction(PP_WRITE); #ifndef USE_CBM_IEC_WAIT while(!cbm_iec_get(fd, IEC_DATA)); #else cbm_iec_wait(fd, IEC_DATA, 1); #endif cbm_pp_write(fd, c1); cbm_iec_release(fd, IEC_CLOCK); #ifndef USE_CBM_IEC_WAIT while(cbm_iec_get(fd, IEC_DATA)); #else cbm_iec_wait(fd, IEC_DATA, 0); #endif cbm_pp_write(fd, c2); cbm_iec_set(fd, IEC_CLOCK); return 0; }