static int apf_cpf_handle_cassette(INT16 *buffer, const UINT8 *bytes) { UINT32 sample_count = 0; UINT32 i; UINT8 cksm = 0; // silence sample_count += apf_put_samples(buffer, 0, 12000, 0); /* start */ for (i=0; i<10000; i++) sample_count += apf_output_bit(buffer, sample_count, 1); sample_count += apf_output_bit(buffer, sample_count, 0); /* data */ for (i=0; i<apf_image_size; i++) { cksm += bytes[i]; sample_count += apf_output_byte(buffer, sample_count, bytes[i]); } /* checksum byte */ sample_count += apf_output_byte(buffer, sample_count, cksm); return sample_count; }
static int apf_cpf_handle_cassette(int16_t *buffer, const uint8_t *bytes) { uint32_t sample_count = 0; uint32_t i; uint8_t cksm = 0; // silence sample_count += apf_put_samples(buffer, 0, 12000, 0); /* start */ for (i=0; i<10000; i++) sample_count += apf_output_bit(buffer, sample_count, 1); sample_count += apf_output_bit(buffer, sample_count, 0); /* data */ for (i=0; i<apf_image_size; i++) { cksm += bytes[i]; sample_count += apf_output_byte(buffer, sample_count, bytes[i]); } /* checksum byte */ sample_count += apf_output_byte(buffer, sample_count, cksm); return sample_count; }