- some constants moved from Dispatch to DataPacket

git-svn-id: https://svn.code.sf.net/p/libusbjava/code/trunk@54 94ad28fe-ef68-46b1-9651-e7ae4fcf1c4c
This commit is contained in:
schlaepfer
2005-11-18 14:56:35 +00:00
parent 53a93eb6fd
commit bc3d624e49
2 changed files with 49 additions and 49 deletions

View File

@@ -234,15 +234,15 @@ public class MC68332 {
private static DataPacket transmit(byte STYPE, int dataLength) private static DataPacket transmit(byte STYPE, int dataLength)
throws USBException, DispatchException, BDIException { throws USBException, DispatchException, BDIException {
// initialize packet // initialize packet
sendData[0] = Dispatch.PACKET_HEADER; sendData[0] = DataPacket.PACKET_HEADER;
sendData[1] = Dispatch.MTYPE_BDI; sendData[1] = Dispatch.MTYPE_BDI;
sendData[2] = STYPE; sendData[2] = STYPE;
sendData[3] = (byte) (dataLength / 0x100); // length sendData[3] = (byte) (dataLength / 0x100); // length
sendData[4] = (byte) (dataLength & 0xFF); sendData[4] = (byte) (dataLength & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + dataLength] = Dispatch.PACKET_END; sendData[DataPacket.PACKET_DATA_OFFSET + dataLength] = DataPacket.PACKET_END;
// write USB-command // write USB-command
USBDevice.write(sendData, dataLength + DataPacket.PACKET_MIN_LENGTH); USBDevice.write_BDI(sendData, dataLength + DataPacket.PACKET_MIN_LENGTH);
// read result // read result
DataPacket data = Dispatch.readBDI(); DataPacket data = Dispatch.readBDI();
@@ -253,7 +253,7 @@ public class MC68332 {
} }
/** /**
* Inserts 17-bits of data (3 bytes) into the send buffer. * Inserts 17-bits of data (3 bytes) into the send bufferList.
* *
* @param data * @param data
* 17 bits (3 bytes) of data * 17 bits (3 bytes) of data
@@ -267,9 +267,9 @@ public class MC68332 {
// TODO check this: // TODO check this:
// sendData[Dispatch.PACKET_DATA_OFFSET + offset] = (byte) (((data >>> // sendData[Dispatch.PACKET_DATA_OFFSET + offset] = (byte) (((data >>>
// 9) & 0x7F) | 0x80); // 9) & 0x7F) | 0x80);
sendData[Dispatch.PACKET_DATA_OFFSET + offset] = (byte) ((data >>> 9) & 0x7F); sendData[DataPacket.PACKET_DATA_OFFSET + offset] = (byte) ((data >>> 9) & 0x7F);
sendData[Dispatch.PACKET_DATA_OFFSET + offset + 1] = (byte) ((data >>> 1) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + offset + 1] = (byte) ((data >>> 1) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + offset + 2] = (byte) ((data & 0x01) << 7); sendData[DataPacket.PACKET_DATA_OFFSET + offset + 2] = (byte) ((data & 0x01) << 7);
} }
/** /**
@@ -497,16 +497,16 @@ public class MC68332 {
} }
while (currentIndex < dataLength) { while (currentIndex < dataLength) {
// FILLB // FILLB
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4] = (byte) ((FILLB >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4] = (byte) ((FILLB >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4 + 1] = (byte) (FILLB & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4 + 1] = (byte) (FILLB & 0xFF);
// DATA (address) // DATA (address)
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4 + 2] = 0; sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4 + 2] = 0;
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4 + 3] = (byte) (downloadData[currentIndex] & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4 + 3] = (byte) (downloadData[currentIndex] & 0xFF);
currentIndex++; currentIndex++;
} }
// send NOP to get result of last write // send NOP to get result of last write
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4] = NOP; sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4] = NOP;
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4 + 1] = NOP; sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4 + 1] = NOP;
data = transmit(STYPE_BDI_17FILL_BYTE_WORD, dataLength * 4 + 2); data = transmit(STYPE_BDI_17FILL_BYTE_WORD, dataLength * 4 + 2);
break; break;
case 2: case 2:
@@ -516,16 +516,16 @@ public class MC68332 {
} }
while (currentIndex < dataLength) { while (currentIndex < dataLength) {
// FILLW // FILLW
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4] = (byte) ((FILLW >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4] = (byte) ((FILLW >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4 + 1] = (byte) (FILLW & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4 + 1] = (byte) (FILLW & 0xFF);
// DATA (address) // DATA (address)
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4 + 2] = (byte) ((downloadData[currentIndex] >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4 + 2] = (byte) ((downloadData[currentIndex] >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4 + 3] = (byte) (downloadData[currentIndex] & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4 + 3] = (byte) (downloadData[currentIndex] & 0xFF);
currentIndex++; currentIndex++;
} }
// send NOP to get result of last write // send NOP to get result of last write
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4] = NOP; sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4] = NOP;
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 4 + 1] = NOP; sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 4 + 1] = NOP;
data = transmit(STYPE_BDI_17FILL_BYTE_WORD, dataLength * 4 + 2); data = transmit(STYPE_BDI_17FILL_BYTE_WORD, dataLength * 4 + 2);
break; break;
case 4: case 4:
@@ -535,19 +535,19 @@ public class MC68332 {
} }
while (currentIndex < dataLength) { while (currentIndex < dataLength) {
// FILL // FILL
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 6] = (byte) ((FILLL >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 6] = (byte) ((FILLL >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 6 + 1] = (byte) (FILLL & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 6 + 1] = (byte) (FILLL & 0xFF);
// MS data // MS data
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 6 + 2] = (byte) ((downloadData[currentIndex] >>> 24) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 6 + 2] = (byte) ((downloadData[currentIndex] >>> 24) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 6 + 3] = (byte) ((downloadData[currentIndex] >>> 16) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 6 + 3] = (byte) ((downloadData[currentIndex] >>> 16) & 0xFF);
// LS data // LS data
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 6 + 4] = (byte) ((downloadData[currentIndex] >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 6 + 4] = (byte) ((downloadData[currentIndex] >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 6 + 5] = (byte) (downloadData[currentIndex] & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 6 + 5] = (byte) (downloadData[currentIndex] & 0xFF);
currentIndex++; currentIndex++;
} }
// send NOP to get result of last write // send NOP to get result of last write
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 6] = NOP; sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 6] = NOP;
sendData[Dispatch.PACKET_DATA_OFFSET + currentIndex * 6 + 1] = NOP; sendData[DataPacket.PACKET_DATA_OFFSET + currentIndex * 6 + 1] = NOP;
data = transmit(STYPE_BDI_17FILL_LONG, dataLength * 6 + 2); data = transmit(STYPE_BDI_17FILL_LONG, dataLength * 6 + 2);
System.out.println("FILL: Transmit: " + (dataLength * 6 + 2)); System.out.println("FILL: Transmit: " + (dataLength * 6 + 2));
break; break;
@@ -595,11 +595,11 @@ public class MC68332 {
// fill the packet with {DUMPB} + 1 NOP at the end // fill the packet with {DUMPB} + 1 NOP at the end
int i; int i;
for (i = 0; i < nofData; i++) { for (i = 0; i < nofData; i++) {
sendData[Dispatch.PACKET_DATA_OFFSET + i * 2] = (byte) ((DUMPB >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 2] = (byte) ((DUMPB >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + i * 2 + 1] = (byte) (DUMPB & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 2 + 1] = (byte) (DUMPB & 0xFF);
} }
sendData[Dispatch.PACKET_DATA_OFFSET + i * 2] = (byte) ((NOP >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 2] = (byte) ((NOP >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + i * 2 + 1] = (byte) (NOP & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 2 + 1] = (byte) (NOP & 0xFF);
dataSize = i * 2 + 2; dataSize = i * 2 + 2;
break; break;
case 2: case 2:
@@ -607,11 +607,11 @@ public class MC68332 {
nofData = MAX_NOF_BYTES_WORDS_FILL; nofData = MAX_NOF_BYTES_WORDS_FILL;
// fill the packet with {DUMPW} + 1 NOP at the end // fill the packet with {DUMPW} + 1 NOP at the end
for (i = 0; i < nofData; i++) { for (i = 0; i < nofData; i++) {
sendData[Dispatch.PACKET_DATA_OFFSET + i * 2] = (byte) ((DUMPW >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 2] = (byte) ((DUMPW >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + i * 2 + 1] = (byte) (DUMPW & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 2 + 1] = (byte) (DUMPW & 0xFF);
} }
sendData[Dispatch.PACKET_DATA_OFFSET + i * 2] = (byte) ((NOP >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 2] = (byte) ((NOP >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + i * 2 + 1] = (byte) (NOP & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 2 + 1] = (byte) (NOP & 0xFF);
dataSize = i * 2 + 2; dataSize = i * 2 + 2;
break; break;
case 4: case 4:
@@ -619,13 +619,13 @@ public class MC68332 {
nofData = MAX_NOF_LONGS_FILL; nofData = MAX_NOF_LONGS_FILL;
// fill the packet with {DUMPL + NOP} + 1 NOP at the end // fill the packet with {DUMPL + NOP} + 1 NOP at the end
for (i = 0; i < nofData; i++) { for (i = 0; i < nofData; i++) {
sendData[Dispatch.PACKET_DATA_OFFSET + i * 4] = (byte) ((DUMPL >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 4] = (byte) ((DUMPL >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + i * 4 + 1] = (byte) (DUMPL & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 4 + 1] = (byte) (DUMPL & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + i * 4 + 2] = (byte) ((NOP >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 4 + 2] = (byte) ((NOP >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + i * 4 + 3] = (byte) (NOP & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 4 + 3] = (byte) (NOP & 0xFF);
} }
sendData[Dispatch.PACKET_DATA_OFFSET + i * 4] = (byte) ((NOP >>> 8) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 4] = (byte) ((NOP >>> 8) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + i * 4 + 1] = (byte) (NOP & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + i * 4 + 1] = (byte) (NOP & 0xFF);
dataSize = i * 4 + 2; dataSize = i * 4 + 2;
break; break;
default: default:

View File

@@ -124,18 +124,18 @@ public class MPC555 {
} }
private static void initPacket(byte STYPE, int dataLength) { private static void initPacket(byte STYPE, int dataLength) {
sendData[0] = Dispatch.PACKET_HEADER; sendData[0] = DataPacket.PACKET_HEADER;
sendData[1] = Dispatch.MTYPE_BDI; sendData[1] = Dispatch.MTYPE_BDI;
sendData[2] = STYPE; sendData[2] = STYPE;
sendData[3] = (byte) (dataLength / 0x100); // length sendData[3] = (byte) (dataLength / 0x100); // length
sendData[4] = (byte) (dataLength & 0xFF); sendData[4] = (byte) (dataLength & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + dataLength] = Dispatch.PACKET_END; sendData[DataPacket.PACKET_DATA_OFFSET + dataLength] = DataPacket.PACKET_END;
} }
private static DataPacket transmit(int dataLength) throws USBException, private static DataPacket transmit(int dataLength) throws USBException,
DispatchException, BDIException { DispatchException, BDIException {
// write USB-command // write USB-command
USBDevice.write(sendData, dataLength + DataPacket.PACKET_MIN_LENGTH); USBDevice.write_BDI(sendData, dataLength + DataPacket.PACKET_MIN_LENGTH);
// read result // read result
DataPacket data = Dispatch.readBDI(); DataPacket data = Dispatch.readBDI();
@@ -161,11 +161,11 @@ public class MPC555 {
b |= 0x20; b |= 0x20;
} }
b |= (byte) (data >>> 27); b |= (byte) (data >>> 27);
sendData[Dispatch.PACKET_DATA_OFFSET + offset] = b; sendData[DataPacket.PACKET_DATA_OFFSET + offset] = b;
sendData[Dispatch.PACKET_DATA_OFFSET + offset + 1] = (byte) ((data >>> 19) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + offset + 1] = (byte) ((data >>> 19) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + offset + 2] = (byte) ((data >>> 11) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + offset + 2] = (byte) ((data >>> 11) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + offset + 3] = (byte) ((data >>> 3) & 0xFF); sendData[DataPacket.PACKET_DATA_OFFSET + offset + 3] = (byte) ((data >>> 3) & 0xFF);
sendData[Dispatch.PACKET_DATA_OFFSET + offset + 4] = (byte) ((data & 0x07) << 5); sendData[DataPacket.PACKET_DATA_OFFSET + offset + 4] = (byte) ((data & 0x07) << 5);
} }
private static DataPacket transfer(boolean modeBit, boolean controlBit, private static DataPacket transfer(boolean modeBit, boolean controlBit,