Shop OBEX P1 Docs P2 Docs Learn Events
Running FTDI EVE2 GPU examples with FlexC — Parallax Forums

Running FTDI EVE2 GPU examples with FlexC

Using the fastspin C compiler, was able to get several of the EVE2 demo codes from FTDI to compile!

I do have my own Spin2 version, but it's nowhere near as complete...
I got the codes from here: https://www.ftdichip.com/Support/SoftwareExamples/FT800_Projects.htm

It took a few days to repurpose these codes for P2.

Here are some screenshots.

Comments

  • RaymanRayman Posts: 13,897
    edited 2020-09-30 18:37
    Here's the code.

    Some notes:
    They all use common drivers in the root folder with these project files in their own folder.
    If project has a folder called "Test", it has things that you need to put on uSD card and stick in Eval board's reader.
    I use build.bat (run via Visual Studio) to compile, just uncomment the project you want. They all create a file called eve2.binary as the output.
    The file "Platform.h" has most of the P2 specific things like pin assignments and stuff like that.

    I commented out most of the stuff for other platforms, but may just remove it all at some point to clean it up.
    There are some projects I couldn't get right away, as noted in build.bat.

    Still, I'm feeling pretty good about going forward with FlexC. This was a pretty nice test. Maybe some things to still sort out though to get the other demos working.
  • Looks great Ray!
  • cgraceycgracey Posts: 14,133
    What is happening here? Is the P2 talking to the EVE2 chip which is rendering the graphics?
  • RaymanRayman Posts: 13,897
    Exactly. There are LCD modules from Newhaven (this one), MatrixOrbital, and others that have EVE2 built in.
  • RaymanRayman Posts: 13,897
    Might be able to get Gameduino stuff to work too...
    https://excamera.com/sphinx/gameduino3/
  • EVE2 is a weird product. To display anything on the screen you have to write an EVE2 program and then swap it in so that it displays on the screen. Say I want to add a button on the screen. You have to add it to the program and swap it in. You can't just write it on the screen.

    The program runs continuously to display the information on the screen. This is ware the problem is in that you only have a small area to input your program instructions and you run out of program memory fast.

    The tools they give you to write the programs though is very good and renders nicely on the development screen.

    I have written a P1 library that has all the commands the same as the program tool writes them so adding the code to the P1 is a snap.

    Mike

  • RaymanRayman Posts: 13,897
    The "displaylist" works a lot like OpenGL does...

    You start a list and then push to display when done.
  • RaymanRayman Posts: 13,897
    edited 2020-10-04 17:43
    The latest Fastspin fixed an issue with initializers and now I can get the Logos example working (although I had to change a structure slightly to make it work...).

    This demo is pretty cool actually. It's mostly sound, which I'm not using but does have a neat animation sequence and cool main menu.
    Screen looks a lot better than it does in my video...


    FTDI's video is better:
Sign In or Register to comment.