2003-08-14 Marcel Telka <marcel@telka.sk>

* src/tap/chain.c (chain_shift_instructions): Moved test for parts without active instruction before
		shifting process.
	(chain_shift_data_registers): Moved test for parts without active instruction or data register before
		shifting process.


git-svn-id: https://urjtag.svn.sourceforge.net/svnroot/urjtag/trunk@514 b68d4a1b-bc3d-0410-92ed-d4ac073336b7
master
Marcel Telka 22 years ago
parent 6be3b8b652
commit c904c19581

@ -1,3 +1,10 @@
2003-08-14 Marcel Telka <marcel@telka.sk>
* src/tap/chain.c (chain_shift_instructions): Moved test for parts without active instruction before
shifting process.
(chain_shift_data_registers): Moved test for parts without active instruction or data register before
shifting process.
2003-08-14 Marcel Telka <marcel@telka.sk>
* data/Makefile.am (nobase_dist_pkgdata_DATA): Added samsung/s3c4510b/s3c4510b.

@ -1,6 +1,7 @@
$Id$
* Write documentation.
* Add 'initbus' command to allow dynamic bus driver loading.
* Support for display the result of a boundary scan formated according to the CPU definitions (e.g. MA[0-26] = 0x00001c00).
* Remove direct relation between JTAG instruction and data register (e.g. ARM7TDMI).
* SVF player.

@ -105,15 +105,16 @@ chain_shift_instructions( chain_t *chain )
ps = chain->parts;
tap_capture_ir( chain );
for (i = 0; i < ps->len; i++) {
if (!ps->parts[i]->active_instruction) {
printf( _("%s(%d) Part without active instruction\n"), __FILE__, __LINE__ );
continue;
if (ps->parts[i]->active_instruction == NULL) {
printf( _("%s(%d) Part %d without active instruction\n"), __FILE__, __LINE__, i );
return;
}
tap_shift_register( chain, ps->parts[i]->active_instruction->value, NULL, (i + 1) == ps->len );
}
tap_capture_ir( chain );
for (i = 0; i < ps->len; i++)
tap_shift_register( chain, ps->parts[i]->active_instruction->value, NULL, (i + 1) == ps->len );
}
void
@ -127,19 +128,20 @@ chain_shift_data_registers( chain_t *chain, int capture_output )
ps = chain->parts;
tap_capture_dr( chain );
for (i = 0; i < ps->len; i++) {
if (!ps->parts[i]->active_instruction) {
printf( _("%s(%d) Part without active instruction\n"), __FILE__, __LINE__ );
continue;
if (ps->parts[i]->active_instruction == NULL) {
printf( _("%s(%d) Part %d without active instruction\n"), __FILE__, __LINE__, i );
return;
}
if (!ps->parts[i]->active_instruction->data_register) {
printf( _("%s(%d) Part without data register\n"), __FILE__, __LINE__ );
continue;
if (ps->parts[i]->active_instruction->data_register == NULL) {
printf( _("%s(%d) Part %d without data register\n"), __FILE__, __LINE__, i );
return;
}
}
tap_capture_dr( chain );
for (i = 0; i < ps->len; i++)
tap_shift_register( chain, ps->parts[i]->active_instruction->data_register->in,
capture_output ? ps->parts[i]->active_instruction->data_register->out : NULL,
(i + 1) == ps->len );
}
}

Loading…
Cancel
Save