Creating PIC18F25K20 Port to FreeRTOS

I’m trying to create a PIC18F25K20 Port do FreeRTOS and although rtosdemo1, rtosdemo2 and rtosdemo3 compiled OK I got many warning messages. I’m using: MPLAB C18 V3.46 FreeRTOSV7.6.0
Linker from Voloviq (FreeRTOSV7.1.0 on PIC18F25k80 Queue – Uart) listed below: // File: 18f25k80_g.lkr // Generic linker script for the PIC18F25K80 processor

DEFINE _CODEEND _DEBUGCODESTART – 1

DEFINE _CEND _CODEEND + _DEBUGCODELEN

DEFINE _DATAEND _DEBUGDATASTART – 1

DEFINE _DEND _DATAEND + _DEBUGDATALEN

LIBPATH .

IFDEF _CRUNTIME

IFDEF _EXTENDEDMODE

FILES c018ie.o FILES clibe.lib FILES p18F25K80_e.lib

ELSE

FILES c018i.o FILES clib.lib FILES p18F25K80.lib

FI

FI

IFDEF _DEBUGCODESTART

CODEPAGE NAME=page START=0x0 END=CODEEND CODEPAGE NAME=debug START=DEBUGCODESTART END=_CEND PROTECTED

ELSE

CODEPAGE NAME=page START=0x0 END=0x7FFF

FI

CODEPAGE NAME=userid START=0x200000 END=0x200007 PROTECTED CODEPAGE NAME=cfgmem START=0x300000 END=0x30000D PROTECTED CODEPAGE NAME=devid START=0x3FFFFE END=0x3FFFFF PROTECTED CODEPAGE NAME=eedata START=0xF00000 END=0xF003FF PROTECTED

IFDEF _EXTENDEDMODE

DATABANK NAME=gpre START=0x0 END=0x5F

ELSE

ACCESSBANK NAME=accessram START=0x0 END=0x5F

FI

//DATABANK NAME=gpr0 START=0x60 END=0xFF //DATABANK NAME=gpr1 START=0x100 END=0x1FF //DATABANK NAME=gpr2 START=0x200 END=0x2FF //DATABANK NAME=gpr3 START=0x300 END=0x3FF //DATABANK NAME=gpr4 START=0x400 END=0x4FF //DATABANK NAME=gpr5 START=0x500 END=0x5FF //DATABANK NAME=gpr6 START=0x600 END=0x6FF //DATABANK NAME=gpr7 START=0x700 END=0x7FF //DATABANK NAME=gpr8 START=0x800 END=0x8FF //DATABANK NAME=gpr9 START=0x900 END=0x9FF //DATABANK NAME=gpr10 START=0xA00 END=0xAFF //DATABANK NAME=gpr11 START=0xB00 END=0xBFF //DATABANK NAME=gpr12 START=0xC00 END=0xCFF DATABANK NAME=BIG_BLOCK START=0x60 END=0xAFF DATABANK NAME=gpr12 START=0xB00 END=0xCFF PROTECTED

IFDEF _DEBUGDATASTART

DATABANK NAME=gpr13 START=0xD00 END=DATAEND DATABANK NAME=dbgspr START=DEBUGDATASTART END=_DEND PROTECTED

ELSE //no debug

DATABANK NAME=gpr13 START=0xD00 END=0xDFF

FI

DATABANK NAME=gpr14 START=0xE00 END=0xE40 DATABANK NAME=sfr14 START=0xE41 END=0xEFF PROTECTED DATABANK NAME=sfr15 START=0xF00 END=0xF5F PROTECTED ACCESSBANK NAME=accesssfr START=0xF60 END=0xFFF PROTECTED

IFDEF _CRUNTIME

SECTION NAME=CONFIG ROM=cfgmem

IFDEF _DEBUGDATASTART

STACK SIZE=0x1FF RAM=gpr12

ELSE

STACK SIZE=0x1FF RAM=gpr12

FI

FI

//////////////////////////////////////////////////////////////// In port.c , I needed to make the following changes: ……………………….. Include defines to config:

pragma config WDTEN = OFF

pragma config FOSC = INTIO2

pragma config XINST = OFF

……………………….. Because there are slight difference in register: Line 561 if( PIR1bits.CCP1IF ) to if( PIR3bits.CCP1IF ) Line 602 PIR1bits.CCP1IF = 0; to PIR3bits.CCP1IF = 0; Line 643 PIE1bits.CCP1IE = portBITSET; to PIE3bits.CCP1IE = portBITSET; Line 651 OpenTimer1( T116BITRW & T1SOURCEINT & T1PS11 & T1CCP1T3CCP2 ); to
            OpenTimer1(T1_SOURCE_FOSC_4 & T1_PS_1_1 & T1_OSC1EN_ON & T1_SYNC_EXT_OFF & T1_16BIT_RW , TIMER_GATE_OFF & TIMER_GATE_POL_HI &    TIMER_GATE_TOGGLE_OFF & TIMER_GATE_1SHOT_OFF & TIMER_GATE_INT_OFF);
/////////////////////////////////////////////////////////////////// In ParTest.c: Modified PortD to PortB PortE to PortC //////////////////////////////////////////////////////////////////// Renamed : timers.h in C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSSourceinclude to timers.h because there are a conflict with timers.h in C:Program FilesMicrochipMPLABC18v3.46h during compilation. //////////////////////////////////////////////////////////////////// Before compilation it is necessary to set the “Build Options” of MPLAB:
        Hex format : INHX32
        Memory Model:
                      Code Model -> Small Code Model
                      Data Model -> Large Data Model
                      Stack Model-> Multi Bank Model

        Generate Command Line -> uncheck -> Extended Mode
////////////////////////////////////////////////////////////////////// Messages I got: rtosdemo1 Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “tasks.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJtasks.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSSourcetasks.c:556:Warning [2066] type qualifier mismatch in assignment Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “queue.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJqueue.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “list.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJlist.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “port.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJport.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “PollQ.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJPollQ.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “main1.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJmain1.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “ParTest.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJParTest.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “serial.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJserial.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:219:Warning [2074] location PRODH specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:219:Warning [2074] location PRODL specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:219:Warning [2074] location TABLAT specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:219:Warning [2074] location .tmpdata specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:246:Warning [2074] location PRODH specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:246:Warning [2074] location PRODL specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:246:Warning [2074] location TABLAT specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:246:Warning [2074] location .tmpdata specified in the interrupt save list is redundant Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “integer.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJinteger.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “heap1.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJheap1.o” -w3 -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmplink.exe” /p18F25K80 /l”C:Arquivos de programasMicrochipMPLABC18v3.46.lib” /k”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLAB” “..18f25k80.lkr” “..OBJtasks.o” “..OBJqueue.o” “..OBJlist.o” “..OBJport.o” “..OBJPollQ.o” “..OBJmain1.o” “..OBJParTest.o” “..OBJserial.o” “..OBJinteger.o” “..OBJheap1.o” /u_CRUNTIME /z__MPLAB_BUILD=1 /m”rtosdemo1.map” /w /o”rtosdemo1.cof” MPLINK 4.48, Linker Device Database Version 1.13 Copyright (c) 1998-2011 Microchip Technology Inc. Errors : 0 MP2HEX 4.48, COFF to HEX File Converter Copyright (c) 1998-2011 Microchip Technology Inc. Errors : 0 //////////////////////////////////////////////////////////////////////////// rtosdemo2 Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “main2.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJmain2.o” -DMPLABPIC18FPORT -Ls -Opa- C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABmain2.c:144:Warning [2058] call of function without prototype Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “serial.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJserial.o” -DMPLABPIC18FPORT -Ls -Opa- C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:219:Warning [2074] location PRODH specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:219:Warning [2074] location PRODL specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:219:Warning [2074] location TABLAT specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:219:Warning [2074] location .tmpdata specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:246:Warning [2074] location PRODH specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:246:Warning [2074] location PRODL specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:246:Warning [2074] location TABLAT specified in the interrupt save list is redundant C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABserialserial.c:246:Warning [2074] location .tmpdata specified in the interrupt save list is redundant Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “ParTest.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJParTest.o” -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “tasks.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJtasks.o” -DMPLABPIC18FPORT -Ls -Opa- C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSSourcetasks.c:556:Warning [2066] type qualifier mismatch in assignment Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “queue.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJqueue.o” -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “list.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJlist.o” -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “heap1.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJheap1.o” -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “flash.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJflash.o” -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmcc18.exe” -p=18F25K80 /i”C:Arquivos de programasMicrochipMPLABC18v3.46h” -I”.” -I”.include” -I”..include” -I”....include” -I”......include” -I”....Sourceinclude” -I”......Sourceinclude” -I”..DemoPIC18MPLAB” -I”......DemoPIC18MPLAB” -I”........DemoPIC18MPLAB” -I”..Commoninclude” -I”....Commoninclude” “port.c” -fo=”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLABOBJport.o” -DMPLABPIC18FPORT -Ls -Opa- Executing: “C:Arquivos de programasMicrochipMPLABC18v3.46binmplink.exe” /p18F25K80 /l”C:Arquivos de programasMicrochipMPLABC18v3.46lib” /k”C:FreeRTOSV7.6.0PIC18F25K80FreeRTOSDemoPIC18MPLAB” “..18f25k80.lkr” “..OBJmain2.o” “..OBJserial.o” “..OBJParTest.o” “..OBJtasks.o” “..OBJqueue.o” “..OBJlist.o” “..OBJheap1.o” “..OBJflash.o” “..OBJport.o” /uCRUNTIME /z__MPLAB_BUILD=1 /m”rtosdemo2.map” /o”rtosdemo2.cof” MPLINK 4.48, Linker Device Database Version 1.13 Copyright (c) 1998-2011 Microchip Technology Inc. Errors : 0 MP2HEX 4.48, COFF to HEX File Converter Copyright (c) 1998-2011 Microchip Technology Inc. Errors : 0 ////////////////////////////////////////////////////////////////////////////////////// rtosdemo3
        Compiled OK without messages.
////////////////////////////////////////////////////////////////////////////////////// Finally I ask anyone: How to correct port.c to avoid the “Warning Messages”? Regards

Creating PIC18F25K20 Port to FreeRTOS

I’m afraid we don’t encourage the use of FreeRTOS on PIC18 devices, the architecture and non re-entrant compiler do not make it a suitable target. I’m also not sure what Voloviq is, but if you got the code from Voloviq I suggest you ask whoever created or maintained Voloviq for support. Regards.