Hi! > I think yes. The best fastloaders transfer 128 or 256 bytes in a row > without any explicit synchronization. The trick is to monitor the serial > bus and add a branch to the next address, i.e. something like > bit serialbus:bmi .+2. Every time the line changes (one cycle) too early, > the code will spend an extra cycle. (Remember, a taken branch adds 1 > cycle, or 2 cycles if the target is on a different page.) But I guess it can be done just because these loaders transmit GCR code bytes instead of decoded data. These GCR bytes are then decoded in the C64. Doing so, you can be 100% sure that you'll have at least one change in every transmitted 3 bitpairs. When transmitting pure data, receiving 100 or 200 0 bytes would mean that this implicite synch trick goes out of synchronisation - 'cos it doesn't notice whether the incoming bits were the present, or the earlier (or the next :-) ) 00 bits. The GCR doesn't have this problem, as all GCR nybbles contain at least one '0' and one '1'. Levente - This message was sent through the cbm-hackers mailing list. To unsubscribe: echo unsubscribe | mail cbm-hackers-request@dot.tcm.hut.fi.
Archive generated by hypermail 2.1.1.