--- Quote Start ---
I rembered your post, when I stumbled upon the same
enum issue with MSVC. I can supply now a small example application, including the MSVC import library and modified include file.
Best regards,
Frank
P.S.: As another comment, jtag_atlantic.dll is only
seeing JTAG UART (NODE_ID 0x80) virtual JTAG functions. To interface any other virtual JTAG node type, you have to go through jtag_client.dll. According to the exported functions, sld_hapi.dll is providing an interface similar to virtual JTAG tcl commands provided by quartus_stp, as documented in TclScriptRefMnl.pdf. Unfortunately there's no interface documentation for both DLLs.
Another option is using generic JTAG interfaces and implementing the virtual JTAG protocol, as discussed in other threads.
--- Quote End ---
==================
Dear Frank,
I tried the example MSVC application you've provided with Quartus 9.1 installed. Got strange issue:
1) jtagatlantic_open (NULL, 0x0, -1, NULL) - OK
2) jtagatlantic_flush - OK
3) jtagatlantic_write(link, "Hello", 5) returns 5. Should be OK, but nothing is sent to NIOS target
- When using nios2-terminal (command line or NIOS IDE) - works fine - NIOS target receives "Hello".
- I sniffed JTAGserver on TCP/IP socket 1309 - can see activity at steps 1 and 2 (open, flush), but no activity at step 3.
Also tried other JTAG_Atlantic examples (attached) - they work in Cygwin environment, but behave exactly as described above when compiled in MSVC.
Did you try this sample application with recent releases of Quartus (9/10). May be something changed in JTAG_Atlantic.DLL in recent Quartus releases ?
Would very appreciate your help.
Sincerely,
Juri Cizas
Infineon Technologies