Fix incorrect macro guard in the UC3 EndpointStream header file.
[pub/USBasp.git] / Projects / AVRISP-MKII / Lib / XPROG / TINYNVM.c
index 0322a6e..891ae8d 100644 (file)
@@ -43,9 +43,9 @@ static void TINYNVM_SendPointerAddress(const uint16_t AbsoluteAddress)
 {
        /* Send the given 16-bit address to the target, LSB first */
        XPROGTarget_SendByte(TPI_CMD_SSTPR | 0);
-       XPROGTarget_SendByte(((uint8_t*)&AbsoluteAddress)[0]);
+       XPROGTarget_SendByte(AbsoluteAddress & 0xFF);
        XPROGTarget_SendByte(TPI_CMD_SSTPR | 1);
-       XPROGTarget_SendByte(((uint8_t*)&AbsoluteAddress)[1]);
+       XPROGTarget_SendByte(AbsoluteAddress >> 8);
 }
 
 /** Sends a SIN command to the target with the specified I/O address, ready for the data byte to be written.
@@ -85,7 +85,7 @@ bool TINYNVM_WaitWhileNVMBusBusy(void)
                uint8_t StatusRegister = XPROGTarget_ReceiveByte();
 
                /* We might have timed out waiting for the status register read response, check here */
-               if (!(TimeoutTicksRemaining))
+               if (TimeoutExpired)
                  return false;
 
                /* Check the status register read response to see if the NVM bus is enabled */
@@ -110,7 +110,7 @@ bool TINYNVM_WaitWhileNVMControllerBusy(void)
                uint8_t StatusRegister = XPROGTarget_ReceiveByte();
 
                /* We might have timed out waiting for the status register read response, check here */
-               if (!(TimeoutTicksRemaining))
+               if (TimeoutExpired)
                  return false;
 
                /* Check to see if the BUSY flag is still set */
@@ -176,14 +176,14 @@ bool TINYNVM_ReadMemory(const uint16_t ReadAddress,
        /* Send the address of the location to read from */
        TINYNVM_SendPointerAddress(ReadAddress);
 
-       while (ReadSize-- && TimeoutTicksRemaining)
+       while (ReadSize-- && !(TimeoutExpired))
        {
                /* Read the byte of data from the target */
                XPROGTarget_SendByte(TPI_CMD_SLD | TPI_POINTER_INDIRECT_PI);
                *(ReadBuffer++) = XPROGTarget_ReceiveByte();
        }
 
-       return (TimeoutTicksRemaining != 0);
+       return (TimeoutExpired == false);
 }
 
 /** Writes word addressed memory to the target's memory spaces.