1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-12-23 20:29:42 +00:00

Lengths I'd taken seem to have been for dipoles, not single poles. So I just doubled the clock rate. Also I was producing each dipole as high then low, when they should probably be low then high. The Vic now at least recognises that something is happening on the tape.

This commit is contained in:
Thomas Harte 2016-08-16 19:46:53 -04:00
parent 3a23d5d8cf
commit 12f8aff65b
2 changed files with 5 additions and 5 deletions

View File

@ -102,7 +102,7 @@ Machine::~Machine()
unsigned int Machine::perform_bus_operation(CPU6502::BusOperation operation, uint16_t address, uint8_t *value)
{
// static int logCount = 0;
// if(operation == CPU6502::BusOperation::ReadOpcode && address == 0xee17) logCount = 500;
// if(operation == CPU6502::BusOperation::ReadOpcode && address == 0xf957) logCount = 500;
// if(operation == CPU6502::BusOperation::ReadOpcode && logCount) {
// logCount--;
// printf("%04x\n", address);

View File

@ -57,8 +57,8 @@ Tape::Pulse TapePRG::get_next_pulse()
case WordMarker: pulse.length.length = (_bitPhase&2) ? one_length : marker_length; break;
case EndOfBlock: pulse.length.length = (_bitPhase&2) ? zero_length : marker_length; break;
}
pulse.length.clock_rate = 1000000;
pulse.type = (_bitPhase&1) ? Pulse::Low : Pulse::High;
pulse.length.clock_rate = 2000000;
pulse.type = (_bitPhase&1) ? Pulse::High : Pulse::Low;
return pulse;
}
@ -125,8 +125,8 @@ void TapePRG::get_next_output_token()
case 4: _output_byte = ((_load_address + _length) >> 8) & 0xff; break;
case 5: _output_byte = 0x50; break; // P
case 6: _output_byte = 0x72; break; // R
case 7: _output_byte = 0x67; break; // G
case 6: _output_byte = 0x52; break; // R
case 7: _output_byte = 0x47; break; // G
default:
_output_byte = 0x20;
break;