From a468c0e1dbd89be3258a7b78f338d3d632b783ff Mon Sep 17 00:00:00 2001 From: Michael McMaster Date: Mon, 8 Mar 2021 08:40:41 +1000 Subject: [PATCH] Add v5.2 missing generated files --- .../PSoC5/NOR_RX_DMA_COMPLETE.c | 409 ++++++++++++++++++ .../PSoC5/NOR_RX_DMA_COMPLETE.h | 70 +++ .../Generated_Source/PSoC5/NOR_RX_DMA_dma.c | 141 ++++++ .../Generated_Source/PSoC5/NOR_RX_DMA_dma.h | 35 ++ .../PSoC5/NOR_TX_DMA_COMPLETE.c | 409 ++++++++++++++++++ .../PSoC5/NOR_TX_DMA_COMPLETE.h | 70 +++ .../Generated_Source/PSoC5/NOR_TX_DMA_dma.c | 141 ++++++ .../Generated_Source/PSoC5/NOR_TX_DMA_dma.h | 35 ++ .../SCSI2SD/v5.2/SCSI2SD.cydsn/SCSI2SD.cyfit | Bin 280718 -> 280705 bytes 9 files changed, 1310 insertions(+) create mode 100644 software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_COMPLETE.c create mode 100644 software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_COMPLETE.h create mode 100644 software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_dma.c create mode 100644 software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_dma.h create mode 100644 software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_COMPLETE.c create mode 100644 software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_COMPLETE.h create mode 100644 software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_dma.c create mode 100644 software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_dma.h diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_COMPLETE.c b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_COMPLETE.c new file mode 100644 index 0000000..c934455 --- /dev/null +++ b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_COMPLETE.c @@ -0,0 +1,409 @@ +/******************************************************************************* +* File Name: NOR_RX_DMA_COMPLETE.c +* Version 1.70 +* +* Description: +* API for controlling the state of an interrupt. +* +* +* Note: +* +******************************************************************************** +* Copyright 2008-2015, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +*******************************************************************************/ + + +#include +#include +#include + + +#if !defined(NOR_RX_DMA_COMPLETE__REMOVED) /* Check for removal by optimization */ + +/******************************************************************************* +* Place your includes, defines and code here +********************************************************************************/ +/* `#START NOR_RX_DMA_COMPLETE_intc` */ + +/* `#END` */ + +#ifndef CYINT_IRQ_BASE +#define CYINT_IRQ_BASE 16 +#endif /* CYINT_IRQ_BASE */ +#ifndef CYINT_VECT_TABLE +#define CYINT_VECT_TABLE ((cyisraddress **) CYREG_NVIC_VECT_OFFSET) +#endif /* CYINT_VECT_TABLE */ + +/* Declared in startup, used to set unused interrupts to. */ +CY_ISR_PROTO(IntDefaultHandler); + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_Start +******************************************************************************** +* +* Summary: +* Set up the interrupt and enable it. This function disables the interrupt, +* sets the default interrupt vector, sets the priority from the value in the +* Design Wide Resources Interrupt Editor, then enables the interrupt to the +* interrupt controller. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_Start(void) +{ + /* For all we know the interrupt is active. */ + NOR_RX_DMA_COMPLETE_Disable(); + + /* Set the ISR to point to the NOR_RX_DMA_COMPLETE Interrupt. */ + NOR_RX_DMA_COMPLETE_SetVector(&NOR_RX_DMA_COMPLETE_Interrupt); + + /* Set the priority. */ + NOR_RX_DMA_COMPLETE_SetPriority((uint8)NOR_RX_DMA_COMPLETE_INTC_PRIOR_NUMBER); + + /* Enable it. */ + NOR_RX_DMA_COMPLETE_Enable(); +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_StartEx +******************************************************************************** +* +* Summary: +* Sets up the interrupt and enables it. This function disables the interrupt, +* sets the interrupt vector based on the address passed in, sets the priority +* from the value in the Design Wide Resources Interrupt Editor, then enables +* the interrupt to the interrupt controller. +* +* When defining ISR functions, the CY_ISR and CY_ISR_PROTO macros should be +* used to provide consistent definition across compilers: +* +* Function definition example: +* CY_ISR(MyISR) +* { +* } +* Function prototype example: +* CY_ISR_PROTO(MyISR); +* +* Parameters: +* address: Address of the ISR to set in the interrupt vector table. +* +* Return: +* None +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_StartEx(cyisraddress address) +{ + /* For all we know the interrupt is active. */ + NOR_RX_DMA_COMPLETE_Disable(); + + /* Set the ISR to point to the NOR_RX_DMA_COMPLETE Interrupt. */ + NOR_RX_DMA_COMPLETE_SetVector(address); + + /* Set the priority. */ + NOR_RX_DMA_COMPLETE_SetPriority((uint8)NOR_RX_DMA_COMPLETE_INTC_PRIOR_NUMBER); + + /* Enable it. */ + NOR_RX_DMA_COMPLETE_Enable(); +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_Stop +******************************************************************************** +* +* Summary: +* Disables and removes the interrupt. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_Stop(void) +{ + /* Disable this interrupt. */ + NOR_RX_DMA_COMPLETE_Disable(); + + /* Set the ISR to point to the passive one. */ + NOR_RX_DMA_COMPLETE_SetVector(&IntDefaultHandler); +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_Interrupt +******************************************************************************** +* +* Summary: +* The default Interrupt Service Routine for NOR_RX_DMA_COMPLETE. +* +* Add custom code between the coments to keep the next version of this file +* from over writting your code. +* +* Parameters: +* +* Return: +* None +* +*******************************************************************************/ +CY_ISR(NOR_RX_DMA_COMPLETE_Interrupt) +{ + #ifdef NOR_RX_DMA_COMPLETE_INTERRUPT_INTERRUPT_CALLBACK + NOR_RX_DMA_COMPLETE_Interrupt_InterruptCallback(); + #endif /* NOR_RX_DMA_COMPLETE_INTERRUPT_INTERRUPT_CALLBACK */ + + /* Place your Interrupt code here. */ + /* `#START NOR_RX_DMA_COMPLETE_Interrupt` */ + + /* `#END` */ +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_SetVector +******************************************************************************** +* +* Summary: +* Change the ISR vector for the Interrupt. Note calling NOR_RX_DMA_COMPLETE_Start +* will override any effect this method would have had. To set the vector +* before the component has been started use NOR_RX_DMA_COMPLETE_StartEx instead. +* +* When defining ISR functions, the CY_ISR and CY_ISR_PROTO macros should be +* used to provide consistent definition across compilers: +* +* Function definition example: +* CY_ISR(MyISR) +* { +* } +* +* Function prototype example: +* CY_ISR_PROTO(MyISR); +* +* Parameters: +* address: Address of the ISR to set in the interrupt vector table. +* +* Return: +* None +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_SetVector(cyisraddress address) +{ + cyisraddress * ramVectorTable; + + ramVectorTable = (cyisraddress *) *CYINT_VECT_TABLE; + + ramVectorTable[CYINT_IRQ_BASE + (uint32)NOR_RX_DMA_COMPLETE__INTC_NUMBER] = address; +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_GetVector +******************************************************************************** +* +* Summary: +* Gets the "address" of the current ISR vector for the Interrupt. +* +* Parameters: +* None +* +* Return: +* Address of the ISR in the interrupt vector table. +* +*******************************************************************************/ +cyisraddress NOR_RX_DMA_COMPLETE_GetVector(void) +{ + cyisraddress * ramVectorTable; + + ramVectorTable = (cyisraddress *) *CYINT_VECT_TABLE; + + return ramVectorTable[CYINT_IRQ_BASE + (uint32)NOR_RX_DMA_COMPLETE__INTC_NUMBER]; +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_SetPriority +******************************************************************************** +* +* Summary: +* Sets the Priority of the Interrupt. +* +* Note calling NOR_RX_DMA_COMPLETE_Start or NOR_RX_DMA_COMPLETE_StartEx will +* override any effect this API would have had. This API should only be called +* after NOR_RX_DMA_COMPLETE_Start or NOR_RX_DMA_COMPLETE_StartEx has been called. +* To set the initial priority for the component, use the Design-Wide Resources +* Interrupt Editor. +* +* Note This API has no effect on Non-maskable interrupt NMI). +* +* Parameters: +* priority: Priority of the interrupt, 0 being the highest priority +* PSoC 3 and PSoC 5LP: Priority is from 0 to 7. +* PSoC 4: Priority is from 0 to 3. +* +* Return: +* None +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_SetPriority(uint8 priority) +{ + *NOR_RX_DMA_COMPLETE_INTC_PRIOR = priority << 5; +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_GetPriority +******************************************************************************** +* +* Summary: +* Gets the Priority of the Interrupt. +* +* Parameters: +* None +* +* Return: +* Priority of the interrupt, 0 being the highest priority +* PSoC 3 and PSoC 5LP: Priority is from 0 to 7. +* PSoC 4: Priority is from 0 to 3. +* +*******************************************************************************/ +uint8 NOR_RX_DMA_COMPLETE_GetPriority(void) +{ + uint8 priority; + + + priority = *NOR_RX_DMA_COMPLETE_INTC_PRIOR >> 5; + + return priority; +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_Enable +******************************************************************************** +* +* Summary: +* Enables the interrupt to the interrupt controller. Do not call this function +* unless ISR_Start() has been called or the functionality of the ISR_Start() +* function, which sets the vector and the priority, has been called. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_Enable(void) +{ + /* Enable the general interrupt. */ + *NOR_RX_DMA_COMPLETE_INTC_SET_EN = NOR_RX_DMA_COMPLETE__INTC_MASK; +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_GetState +******************************************************************************** +* +* Summary: +* Gets the state (enabled, disabled) of the Interrupt. +* +* Parameters: +* None +* +* Return: +* 1 if enabled, 0 if disabled. +* +*******************************************************************************/ +uint8 NOR_RX_DMA_COMPLETE_GetState(void) +{ + /* Get the state of the general interrupt. */ + return ((*NOR_RX_DMA_COMPLETE_INTC_SET_EN & (uint32)NOR_RX_DMA_COMPLETE__INTC_MASK) != 0u) ? 1u:0u; +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_Disable +******************************************************************************** +* +* Summary: +* Disables the Interrupt in the interrupt controller. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_Disable(void) +{ + /* Disable the general interrupt. */ + *NOR_RX_DMA_COMPLETE_INTC_CLR_EN = NOR_RX_DMA_COMPLETE__INTC_MASK; +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_SetPending +******************************************************************************** +* +* Summary: +* Causes the Interrupt to enter the pending state, a software method of +* generating the interrupt. +* +* Parameters: +* None +* +* Return: +* None +* +* Side Effects: +* If interrupts are enabled and the interrupt is set up properly, the ISR is +* entered (depending on the priority of this interrupt and other pending +* interrupts). +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_SetPending(void) +{ + *NOR_RX_DMA_COMPLETE_INTC_SET_PD = NOR_RX_DMA_COMPLETE__INTC_MASK; +} + + +/******************************************************************************* +* Function Name: NOR_RX_DMA_COMPLETE_ClearPending +******************************************************************************** +* +* Summary: +* Clears a pending interrupt in the interrupt controller. +* +* Note Some interrupt sources are clear-on-read and require the block +* interrupt/status register to be read/cleared with the appropriate block API +* (GPIO, UART, and so on). Otherwise the ISR will continue to remain in +* pending state even though the interrupt itself is cleared using this API. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_RX_DMA_COMPLETE_ClearPending(void) +{ + *NOR_RX_DMA_COMPLETE_INTC_CLR_PD = NOR_RX_DMA_COMPLETE__INTC_MASK; +} + +#endif /* End check for removal by optimization */ + + +/* [] END OF FILE */ diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_COMPLETE.h b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_COMPLETE.h new file mode 100644 index 0000000..6cfb9a1 --- /dev/null +++ b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_COMPLETE.h @@ -0,0 +1,70 @@ +/******************************************************************************* +* File Name: NOR_RX_DMA_COMPLETE.h +* Version 1.70 +* +* Description: +* Provides the function definitions for the Interrupt Controller. +* +* +******************************************************************************** +* Copyright 2008-2015, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +*******************************************************************************/ +#if !defined(CY_ISR_NOR_RX_DMA_COMPLETE_H) +#define CY_ISR_NOR_RX_DMA_COMPLETE_H + + +#include +#include + +/* Interrupt Controller API. */ +void NOR_RX_DMA_COMPLETE_Start(void); +void NOR_RX_DMA_COMPLETE_StartEx(cyisraddress address); +void NOR_RX_DMA_COMPLETE_Stop(void); + +CY_ISR_PROTO(NOR_RX_DMA_COMPLETE_Interrupt); + +void NOR_RX_DMA_COMPLETE_SetVector(cyisraddress address); +cyisraddress NOR_RX_DMA_COMPLETE_GetVector(void); + +void NOR_RX_DMA_COMPLETE_SetPriority(uint8 priority); +uint8 NOR_RX_DMA_COMPLETE_GetPriority(void); + +void NOR_RX_DMA_COMPLETE_Enable(void); +uint8 NOR_RX_DMA_COMPLETE_GetState(void); +void NOR_RX_DMA_COMPLETE_Disable(void); + +void NOR_RX_DMA_COMPLETE_SetPending(void); +void NOR_RX_DMA_COMPLETE_ClearPending(void); + + +/* Interrupt Controller Constants */ + +/* Address of the INTC.VECT[x] register that contains the Address of the NOR_RX_DMA_COMPLETE ISR. */ +#define NOR_RX_DMA_COMPLETE_INTC_VECTOR ((reg32 *) NOR_RX_DMA_COMPLETE__INTC_VECT) + +/* Address of the NOR_RX_DMA_COMPLETE ISR priority. */ +#define NOR_RX_DMA_COMPLETE_INTC_PRIOR ((reg8 *) NOR_RX_DMA_COMPLETE__INTC_PRIOR_REG) + +/* Priority of the NOR_RX_DMA_COMPLETE interrupt. */ +#define NOR_RX_DMA_COMPLETE_INTC_PRIOR_NUMBER NOR_RX_DMA_COMPLETE__INTC_PRIOR_NUM + +/* Address of the INTC.SET_EN[x] byte to bit enable NOR_RX_DMA_COMPLETE interrupt. */ +#define NOR_RX_DMA_COMPLETE_INTC_SET_EN ((reg32 *) NOR_RX_DMA_COMPLETE__INTC_SET_EN_REG) + +/* Address of the INTC.CLR_EN[x] register to bit clear the NOR_RX_DMA_COMPLETE interrupt. */ +#define NOR_RX_DMA_COMPLETE_INTC_CLR_EN ((reg32 *) NOR_RX_DMA_COMPLETE__INTC_CLR_EN_REG) + +/* Address of the INTC.SET_PD[x] register to set the NOR_RX_DMA_COMPLETE interrupt state to pending. */ +#define NOR_RX_DMA_COMPLETE_INTC_SET_PD ((reg32 *) NOR_RX_DMA_COMPLETE__INTC_SET_PD_REG) + +/* Address of the INTC.CLR_PD[x] register to clear the NOR_RX_DMA_COMPLETE interrupt. */ +#define NOR_RX_DMA_COMPLETE_INTC_CLR_PD ((reg32 *) NOR_RX_DMA_COMPLETE__INTC_CLR_PD_REG) + + +#endif /* CY_ISR_NOR_RX_DMA_COMPLETE_H */ + + +/* [] END OF FILE */ diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_dma.c b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_dma.c new file mode 100644 index 0000000..7354565 --- /dev/null +++ b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_dma.c @@ -0,0 +1,141 @@ +/*************************************************************************** +* File Name: NOR_RX_DMA_dma.c +* Version 1.70 +* +* Description: +* Provides an API for the DMAC component. The API includes functions +* for the DMA controller, DMA channels and Transfer Descriptors. +* +* +* Note: +* This module requires the developer to finish or fill in the auto +* generated funcions and setup the dma channel and TD's. +* +******************************************************************************** +* Copyright 2008-2010, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ +#include +#include +#include + + + +/**************************************************************************** +* +* The following defines are available in Cyfitter.h +* +* +* +* NOR_RX_DMA__DRQ_CTL_REG +* +* +* NOR_RX_DMA__DRQ_NUMBER +* +* Number of TD's used by this channel. +* NOR_RX_DMA__NUMBEROF_TDS +* +* Priority of this channel. +* NOR_RX_DMA__PRIORITY +* +* True if NOR_RX_DMA_TERMIN_SEL is used. +* NOR_RX_DMA__TERMIN_EN +* +* TERMIN interrupt line to signal terminate. +* NOR_RX_DMA__TERMIN_SEL +* +* +* True if NOR_RX_DMA_TERMOUT0_SEL is used. +* NOR_RX_DMA__TERMOUT0_EN +* +* +* TERMOUT0 interrupt line to signal completion. +* NOR_RX_DMA__TERMOUT0_SEL +* +* +* True if NOR_RX_DMA_TERMOUT1_SEL is used. +* NOR_RX_DMA__TERMOUT1_EN +* +* +* TERMOUT1 interrupt line to signal completion. +* NOR_RX_DMA__TERMOUT1_SEL +* +****************************************************************************/ + + +/* Zero based index of NOR_RX_DMA dma channel */ +uint8 NOR_RX_DMA_DmaHandle = DMA_INVALID_CHANNEL; + +/********************************************************************* +* Function Name: uint8 NOR_RX_DMA_DmaInitalize +********************************************************************** +* Summary: +* Allocates and initialises a channel of the DMAC to be used by the +* caller. +* +* Parameters: +* BurstCount. +* +* +* ReqestPerBurst. +* +* +* UpperSrcAddress. +* +* +* UpperDestAddress. +* +* +* Return: +* The channel that can be used by the caller for DMA activity. +* DMA_INVALID_CHANNEL (0xFF) if there are no channels left. +* +* +*******************************************************************/ +uint8 NOR_RX_DMA_DmaInitialize(uint8 BurstCount, uint8 ReqestPerBurst, uint16 UpperSrcAddress, uint16 UpperDestAddress) +{ + + /* Allocate a DMA channel. */ + NOR_RX_DMA_DmaHandle = (uint8)NOR_RX_DMA__DRQ_NUMBER; + + /* Configure the channel. */ + (void)CyDmaChSetConfiguration(NOR_RX_DMA_DmaHandle, + BurstCount, + ReqestPerBurst, + (uint8)NOR_RX_DMA__TERMOUT0_SEL, + (uint8)NOR_RX_DMA__TERMOUT1_SEL, + (uint8)NOR_RX_DMA__TERMIN_SEL); + + /* Set the extended address for the transfers */ + (void)CyDmaChSetExtendedAddress(NOR_RX_DMA_DmaHandle, UpperSrcAddress, UpperDestAddress); + + /* Set the priority for this channel */ + (void)CyDmaChPriority(NOR_RX_DMA_DmaHandle, (uint8)NOR_RX_DMA__PRIORITY); + + return NOR_RX_DMA_DmaHandle; +} + +/********************************************************************* +* Function Name: void NOR_RX_DMA_DmaRelease +********************************************************************** +* Summary: +* Frees the channel associated with NOR_RX_DMA. +* +* +* Parameters: +* void. +* +* +* +* Return: +* void. +* +*******************************************************************/ +void NOR_RX_DMA_DmaRelease(void) +{ + /* Disable the channel */ + (void)CyDmaChDisable(NOR_RX_DMA_DmaHandle); +} + diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_dma.h b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_dma.h new file mode 100644 index 0000000..d891204 --- /dev/null +++ b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_RX_DMA_dma.h @@ -0,0 +1,35 @@ +/****************************************************************************** +* File Name: NOR_RX_DMA_dma.h +* Version 1.70 +* +* Description: +* Provides the function definitions for the DMA Controller. +* +* +******************************************************************************** +* Copyright 2008-2010, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ +#if !defined(CY_DMA_NOR_RX_DMA_DMA_H__) +#define CY_DMA_NOR_RX_DMA_DMA_H__ + + + +#include +#include + +#define NOR_RX_DMA__TD_TERMOUT_EN (((0 != NOR_RX_DMA__TERMOUT0_EN) ? TD_TERMOUT0_EN : 0) | \ + (NOR_RX_DMA__TERMOUT1_EN ? TD_TERMOUT1_EN : 0)) + +/* Zero based index of NOR_RX_DMA dma channel */ +extern uint8 NOR_RX_DMA_DmaHandle; + + +uint8 NOR_RX_DMA_DmaInitialize(uint8 BurstCount, uint8 ReqestPerBurst, uint16 UpperSrcAddress, uint16 UpperDestAddress) ; +void NOR_RX_DMA_DmaRelease(void) ; + + +/* CY_DMA_NOR_RX_DMA_DMA_H__ */ +#endif diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_COMPLETE.c b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_COMPLETE.c new file mode 100644 index 0000000..d9a64ab --- /dev/null +++ b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_COMPLETE.c @@ -0,0 +1,409 @@ +/******************************************************************************* +* File Name: NOR_TX_DMA_COMPLETE.c +* Version 1.70 +* +* Description: +* API for controlling the state of an interrupt. +* +* +* Note: +* +******************************************************************************** +* Copyright 2008-2015, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +*******************************************************************************/ + + +#include +#include +#include + + +#if !defined(NOR_TX_DMA_COMPLETE__REMOVED) /* Check for removal by optimization */ + +/******************************************************************************* +* Place your includes, defines and code here +********************************************************************************/ +/* `#START NOR_TX_DMA_COMPLETE_intc` */ + +/* `#END` */ + +#ifndef CYINT_IRQ_BASE +#define CYINT_IRQ_BASE 16 +#endif /* CYINT_IRQ_BASE */ +#ifndef CYINT_VECT_TABLE +#define CYINT_VECT_TABLE ((cyisraddress **) CYREG_NVIC_VECT_OFFSET) +#endif /* CYINT_VECT_TABLE */ + +/* Declared in startup, used to set unused interrupts to. */ +CY_ISR_PROTO(IntDefaultHandler); + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_Start +******************************************************************************** +* +* Summary: +* Set up the interrupt and enable it. This function disables the interrupt, +* sets the default interrupt vector, sets the priority from the value in the +* Design Wide Resources Interrupt Editor, then enables the interrupt to the +* interrupt controller. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_Start(void) +{ + /* For all we know the interrupt is active. */ + NOR_TX_DMA_COMPLETE_Disable(); + + /* Set the ISR to point to the NOR_TX_DMA_COMPLETE Interrupt. */ + NOR_TX_DMA_COMPLETE_SetVector(&NOR_TX_DMA_COMPLETE_Interrupt); + + /* Set the priority. */ + NOR_TX_DMA_COMPLETE_SetPriority((uint8)NOR_TX_DMA_COMPLETE_INTC_PRIOR_NUMBER); + + /* Enable it. */ + NOR_TX_DMA_COMPLETE_Enable(); +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_StartEx +******************************************************************************** +* +* Summary: +* Sets up the interrupt and enables it. This function disables the interrupt, +* sets the interrupt vector based on the address passed in, sets the priority +* from the value in the Design Wide Resources Interrupt Editor, then enables +* the interrupt to the interrupt controller. +* +* When defining ISR functions, the CY_ISR and CY_ISR_PROTO macros should be +* used to provide consistent definition across compilers: +* +* Function definition example: +* CY_ISR(MyISR) +* { +* } +* Function prototype example: +* CY_ISR_PROTO(MyISR); +* +* Parameters: +* address: Address of the ISR to set in the interrupt vector table. +* +* Return: +* None +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_StartEx(cyisraddress address) +{ + /* For all we know the interrupt is active. */ + NOR_TX_DMA_COMPLETE_Disable(); + + /* Set the ISR to point to the NOR_TX_DMA_COMPLETE Interrupt. */ + NOR_TX_DMA_COMPLETE_SetVector(address); + + /* Set the priority. */ + NOR_TX_DMA_COMPLETE_SetPriority((uint8)NOR_TX_DMA_COMPLETE_INTC_PRIOR_NUMBER); + + /* Enable it. */ + NOR_TX_DMA_COMPLETE_Enable(); +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_Stop +******************************************************************************** +* +* Summary: +* Disables and removes the interrupt. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_Stop(void) +{ + /* Disable this interrupt. */ + NOR_TX_DMA_COMPLETE_Disable(); + + /* Set the ISR to point to the passive one. */ + NOR_TX_DMA_COMPLETE_SetVector(&IntDefaultHandler); +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_Interrupt +******************************************************************************** +* +* Summary: +* The default Interrupt Service Routine for NOR_TX_DMA_COMPLETE. +* +* Add custom code between the coments to keep the next version of this file +* from over writting your code. +* +* Parameters: +* +* Return: +* None +* +*******************************************************************************/ +CY_ISR(NOR_TX_DMA_COMPLETE_Interrupt) +{ + #ifdef NOR_TX_DMA_COMPLETE_INTERRUPT_INTERRUPT_CALLBACK + NOR_TX_DMA_COMPLETE_Interrupt_InterruptCallback(); + #endif /* NOR_TX_DMA_COMPLETE_INTERRUPT_INTERRUPT_CALLBACK */ + + /* Place your Interrupt code here. */ + /* `#START NOR_TX_DMA_COMPLETE_Interrupt` */ + + /* `#END` */ +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_SetVector +******************************************************************************** +* +* Summary: +* Change the ISR vector for the Interrupt. Note calling NOR_TX_DMA_COMPLETE_Start +* will override any effect this method would have had. To set the vector +* before the component has been started use NOR_TX_DMA_COMPLETE_StartEx instead. +* +* When defining ISR functions, the CY_ISR and CY_ISR_PROTO macros should be +* used to provide consistent definition across compilers: +* +* Function definition example: +* CY_ISR(MyISR) +* { +* } +* +* Function prototype example: +* CY_ISR_PROTO(MyISR); +* +* Parameters: +* address: Address of the ISR to set in the interrupt vector table. +* +* Return: +* None +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_SetVector(cyisraddress address) +{ + cyisraddress * ramVectorTable; + + ramVectorTable = (cyisraddress *) *CYINT_VECT_TABLE; + + ramVectorTable[CYINT_IRQ_BASE + (uint32)NOR_TX_DMA_COMPLETE__INTC_NUMBER] = address; +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_GetVector +******************************************************************************** +* +* Summary: +* Gets the "address" of the current ISR vector for the Interrupt. +* +* Parameters: +* None +* +* Return: +* Address of the ISR in the interrupt vector table. +* +*******************************************************************************/ +cyisraddress NOR_TX_DMA_COMPLETE_GetVector(void) +{ + cyisraddress * ramVectorTable; + + ramVectorTable = (cyisraddress *) *CYINT_VECT_TABLE; + + return ramVectorTable[CYINT_IRQ_BASE + (uint32)NOR_TX_DMA_COMPLETE__INTC_NUMBER]; +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_SetPriority +******************************************************************************** +* +* Summary: +* Sets the Priority of the Interrupt. +* +* Note calling NOR_TX_DMA_COMPLETE_Start or NOR_TX_DMA_COMPLETE_StartEx will +* override any effect this API would have had. This API should only be called +* after NOR_TX_DMA_COMPLETE_Start or NOR_TX_DMA_COMPLETE_StartEx has been called. +* To set the initial priority for the component, use the Design-Wide Resources +* Interrupt Editor. +* +* Note This API has no effect on Non-maskable interrupt NMI). +* +* Parameters: +* priority: Priority of the interrupt, 0 being the highest priority +* PSoC 3 and PSoC 5LP: Priority is from 0 to 7. +* PSoC 4: Priority is from 0 to 3. +* +* Return: +* None +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_SetPriority(uint8 priority) +{ + *NOR_TX_DMA_COMPLETE_INTC_PRIOR = priority << 5; +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_GetPriority +******************************************************************************** +* +* Summary: +* Gets the Priority of the Interrupt. +* +* Parameters: +* None +* +* Return: +* Priority of the interrupt, 0 being the highest priority +* PSoC 3 and PSoC 5LP: Priority is from 0 to 7. +* PSoC 4: Priority is from 0 to 3. +* +*******************************************************************************/ +uint8 NOR_TX_DMA_COMPLETE_GetPriority(void) +{ + uint8 priority; + + + priority = *NOR_TX_DMA_COMPLETE_INTC_PRIOR >> 5; + + return priority; +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_Enable +******************************************************************************** +* +* Summary: +* Enables the interrupt to the interrupt controller. Do not call this function +* unless ISR_Start() has been called or the functionality of the ISR_Start() +* function, which sets the vector and the priority, has been called. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_Enable(void) +{ + /* Enable the general interrupt. */ + *NOR_TX_DMA_COMPLETE_INTC_SET_EN = NOR_TX_DMA_COMPLETE__INTC_MASK; +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_GetState +******************************************************************************** +* +* Summary: +* Gets the state (enabled, disabled) of the Interrupt. +* +* Parameters: +* None +* +* Return: +* 1 if enabled, 0 if disabled. +* +*******************************************************************************/ +uint8 NOR_TX_DMA_COMPLETE_GetState(void) +{ + /* Get the state of the general interrupt. */ + return ((*NOR_TX_DMA_COMPLETE_INTC_SET_EN & (uint32)NOR_TX_DMA_COMPLETE__INTC_MASK) != 0u) ? 1u:0u; +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_Disable +******************************************************************************** +* +* Summary: +* Disables the Interrupt in the interrupt controller. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_Disable(void) +{ + /* Disable the general interrupt. */ + *NOR_TX_DMA_COMPLETE_INTC_CLR_EN = NOR_TX_DMA_COMPLETE__INTC_MASK; +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_SetPending +******************************************************************************** +* +* Summary: +* Causes the Interrupt to enter the pending state, a software method of +* generating the interrupt. +* +* Parameters: +* None +* +* Return: +* None +* +* Side Effects: +* If interrupts are enabled and the interrupt is set up properly, the ISR is +* entered (depending on the priority of this interrupt and other pending +* interrupts). +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_SetPending(void) +{ + *NOR_TX_DMA_COMPLETE_INTC_SET_PD = NOR_TX_DMA_COMPLETE__INTC_MASK; +} + + +/******************************************************************************* +* Function Name: NOR_TX_DMA_COMPLETE_ClearPending +******************************************************************************** +* +* Summary: +* Clears a pending interrupt in the interrupt controller. +* +* Note Some interrupt sources are clear-on-read and require the block +* interrupt/status register to be read/cleared with the appropriate block API +* (GPIO, UART, and so on). Otherwise the ISR will continue to remain in +* pending state even though the interrupt itself is cleared using this API. +* +* Parameters: +* None +* +* Return: +* None +* +*******************************************************************************/ +void NOR_TX_DMA_COMPLETE_ClearPending(void) +{ + *NOR_TX_DMA_COMPLETE_INTC_CLR_PD = NOR_TX_DMA_COMPLETE__INTC_MASK; +} + +#endif /* End check for removal by optimization */ + + +/* [] END OF FILE */ diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_COMPLETE.h b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_COMPLETE.h new file mode 100644 index 0000000..b8f3e7f --- /dev/null +++ b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_COMPLETE.h @@ -0,0 +1,70 @@ +/******************************************************************************* +* File Name: NOR_TX_DMA_COMPLETE.h +* Version 1.70 +* +* Description: +* Provides the function definitions for the Interrupt Controller. +* +* +******************************************************************************** +* Copyright 2008-2015, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +*******************************************************************************/ +#if !defined(CY_ISR_NOR_TX_DMA_COMPLETE_H) +#define CY_ISR_NOR_TX_DMA_COMPLETE_H + + +#include +#include + +/* Interrupt Controller API. */ +void NOR_TX_DMA_COMPLETE_Start(void); +void NOR_TX_DMA_COMPLETE_StartEx(cyisraddress address); +void NOR_TX_DMA_COMPLETE_Stop(void); + +CY_ISR_PROTO(NOR_TX_DMA_COMPLETE_Interrupt); + +void NOR_TX_DMA_COMPLETE_SetVector(cyisraddress address); +cyisraddress NOR_TX_DMA_COMPLETE_GetVector(void); + +void NOR_TX_DMA_COMPLETE_SetPriority(uint8 priority); +uint8 NOR_TX_DMA_COMPLETE_GetPriority(void); + +void NOR_TX_DMA_COMPLETE_Enable(void); +uint8 NOR_TX_DMA_COMPLETE_GetState(void); +void NOR_TX_DMA_COMPLETE_Disable(void); + +void NOR_TX_DMA_COMPLETE_SetPending(void); +void NOR_TX_DMA_COMPLETE_ClearPending(void); + + +/* Interrupt Controller Constants */ + +/* Address of the INTC.VECT[x] register that contains the Address of the NOR_TX_DMA_COMPLETE ISR. */ +#define NOR_TX_DMA_COMPLETE_INTC_VECTOR ((reg32 *) NOR_TX_DMA_COMPLETE__INTC_VECT) + +/* Address of the NOR_TX_DMA_COMPLETE ISR priority. */ +#define NOR_TX_DMA_COMPLETE_INTC_PRIOR ((reg8 *) NOR_TX_DMA_COMPLETE__INTC_PRIOR_REG) + +/* Priority of the NOR_TX_DMA_COMPLETE interrupt. */ +#define NOR_TX_DMA_COMPLETE_INTC_PRIOR_NUMBER NOR_TX_DMA_COMPLETE__INTC_PRIOR_NUM + +/* Address of the INTC.SET_EN[x] byte to bit enable NOR_TX_DMA_COMPLETE interrupt. */ +#define NOR_TX_DMA_COMPLETE_INTC_SET_EN ((reg32 *) NOR_TX_DMA_COMPLETE__INTC_SET_EN_REG) + +/* Address of the INTC.CLR_EN[x] register to bit clear the NOR_TX_DMA_COMPLETE interrupt. */ +#define NOR_TX_DMA_COMPLETE_INTC_CLR_EN ((reg32 *) NOR_TX_DMA_COMPLETE__INTC_CLR_EN_REG) + +/* Address of the INTC.SET_PD[x] register to set the NOR_TX_DMA_COMPLETE interrupt state to pending. */ +#define NOR_TX_DMA_COMPLETE_INTC_SET_PD ((reg32 *) NOR_TX_DMA_COMPLETE__INTC_SET_PD_REG) + +/* Address of the INTC.CLR_PD[x] register to clear the NOR_TX_DMA_COMPLETE interrupt. */ +#define NOR_TX_DMA_COMPLETE_INTC_CLR_PD ((reg32 *) NOR_TX_DMA_COMPLETE__INTC_CLR_PD_REG) + + +#endif /* CY_ISR_NOR_TX_DMA_COMPLETE_H */ + + +/* [] END OF FILE */ diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_dma.c b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_dma.c new file mode 100644 index 0000000..b832e96 --- /dev/null +++ b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_dma.c @@ -0,0 +1,141 @@ +/*************************************************************************** +* File Name: NOR_TX_DMA_dma.c +* Version 1.70 +* +* Description: +* Provides an API for the DMAC component. The API includes functions +* for the DMA controller, DMA channels and Transfer Descriptors. +* +* +* Note: +* This module requires the developer to finish or fill in the auto +* generated funcions and setup the dma channel and TD's. +* +******************************************************************************** +* Copyright 2008-2010, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ +#include +#include +#include + + + +/**************************************************************************** +* +* The following defines are available in Cyfitter.h +* +* +* +* NOR_TX_DMA__DRQ_CTL_REG +* +* +* NOR_TX_DMA__DRQ_NUMBER +* +* Number of TD's used by this channel. +* NOR_TX_DMA__NUMBEROF_TDS +* +* Priority of this channel. +* NOR_TX_DMA__PRIORITY +* +* True if NOR_TX_DMA_TERMIN_SEL is used. +* NOR_TX_DMA__TERMIN_EN +* +* TERMIN interrupt line to signal terminate. +* NOR_TX_DMA__TERMIN_SEL +* +* +* True if NOR_TX_DMA_TERMOUT0_SEL is used. +* NOR_TX_DMA__TERMOUT0_EN +* +* +* TERMOUT0 interrupt line to signal completion. +* NOR_TX_DMA__TERMOUT0_SEL +* +* +* True if NOR_TX_DMA_TERMOUT1_SEL is used. +* NOR_TX_DMA__TERMOUT1_EN +* +* +* TERMOUT1 interrupt line to signal completion. +* NOR_TX_DMA__TERMOUT1_SEL +* +****************************************************************************/ + + +/* Zero based index of NOR_TX_DMA dma channel */ +uint8 NOR_TX_DMA_DmaHandle = DMA_INVALID_CHANNEL; + +/********************************************************************* +* Function Name: uint8 NOR_TX_DMA_DmaInitalize +********************************************************************** +* Summary: +* Allocates and initialises a channel of the DMAC to be used by the +* caller. +* +* Parameters: +* BurstCount. +* +* +* ReqestPerBurst. +* +* +* UpperSrcAddress. +* +* +* UpperDestAddress. +* +* +* Return: +* The channel that can be used by the caller for DMA activity. +* DMA_INVALID_CHANNEL (0xFF) if there are no channels left. +* +* +*******************************************************************/ +uint8 NOR_TX_DMA_DmaInitialize(uint8 BurstCount, uint8 ReqestPerBurst, uint16 UpperSrcAddress, uint16 UpperDestAddress) +{ + + /* Allocate a DMA channel. */ + NOR_TX_DMA_DmaHandle = (uint8)NOR_TX_DMA__DRQ_NUMBER; + + /* Configure the channel. */ + (void)CyDmaChSetConfiguration(NOR_TX_DMA_DmaHandle, + BurstCount, + ReqestPerBurst, + (uint8)NOR_TX_DMA__TERMOUT0_SEL, + (uint8)NOR_TX_DMA__TERMOUT1_SEL, + (uint8)NOR_TX_DMA__TERMIN_SEL); + + /* Set the extended address for the transfers */ + (void)CyDmaChSetExtendedAddress(NOR_TX_DMA_DmaHandle, UpperSrcAddress, UpperDestAddress); + + /* Set the priority for this channel */ + (void)CyDmaChPriority(NOR_TX_DMA_DmaHandle, (uint8)NOR_TX_DMA__PRIORITY); + + return NOR_TX_DMA_DmaHandle; +} + +/********************************************************************* +* Function Name: void NOR_TX_DMA_DmaRelease +********************************************************************** +* Summary: +* Frees the channel associated with NOR_TX_DMA. +* +* +* Parameters: +* void. +* +* +* +* Return: +* void. +* +*******************************************************************/ +void NOR_TX_DMA_DmaRelease(void) +{ + /* Disable the channel */ + (void)CyDmaChDisable(NOR_TX_DMA_DmaHandle); +} + diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_dma.h b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_dma.h new file mode 100644 index 0000000..181a4be --- /dev/null +++ b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/Generated_Source/PSoC5/NOR_TX_DMA_dma.h @@ -0,0 +1,35 @@ +/****************************************************************************** +* File Name: NOR_TX_DMA_dma.h +* Version 1.70 +* +* Description: +* Provides the function definitions for the DMA Controller. +* +* +******************************************************************************** +* Copyright 2008-2010, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ +#if !defined(CY_DMA_NOR_TX_DMA_DMA_H__) +#define CY_DMA_NOR_TX_DMA_DMA_H__ + + + +#include +#include + +#define NOR_TX_DMA__TD_TERMOUT_EN (((0 != NOR_TX_DMA__TERMOUT0_EN) ? TD_TERMOUT0_EN : 0) | \ + (NOR_TX_DMA__TERMOUT1_EN ? TD_TERMOUT1_EN : 0)) + +/* Zero based index of NOR_TX_DMA dma channel */ +extern uint8 NOR_TX_DMA_DmaHandle; + + +uint8 NOR_TX_DMA_DmaInitialize(uint8 BurstCount, uint8 ReqestPerBurst, uint16 UpperSrcAddress, uint16 UpperDestAddress) ; +void NOR_TX_DMA_DmaRelease(void) ; + + +/* CY_DMA_NOR_TX_DMA_DMA_H__ */ +#endif diff --git a/software/SCSI2SD/v5.2/SCSI2SD.cydsn/SCSI2SD.cyfit b/software/SCSI2SD/v5.2/SCSI2SD.cydsn/SCSI2SD.cyfit index 6dec319ff6b5fe1134ff87e0d0b260d1613b21e5..735b8f8afe87f5bc6bb8e5126485b298229bc156 100644 GIT binary patch delta 47493 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 delta 47469 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 (zX1l;1qc6}3b0*0+N4LLh|r^hx}a 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