Jack Gassett

RetroCade 1.1 - SID analog filters and SID player!

32 posts in this topic

We just released RetroCade 1.1 that adds support for the SID analog filters and ability to play SID files from SD card and smallFS. We have noticed that there are still some problem SID files so please respond here with any SID files that don't sound right or cause problems.

 

A big thank you to Alvaro Lopes for writing the VHDL to implement the SID filters and porting tinySID to ZPUino.

 

Jack.

Share this post


Link to post
Share on other sites

Here is one of a whole folder of SIDs I have that won't play. They lock up on the first note and require a reboot of the Papilio to recover.

badsid.zip

Share this post


Link to post
Share on other sites

Ok, finally got the update to work by uninstalling and reinstalling some software.

I ran the setup for the RetroCade 1.1 and installed it in "c:\retro"

The created link in the startmenu called "Upgrade to RetroCade-1.1 Bit File" does however not work - it is set to the path ""C:\Papilio Loader\papilio-loader.exe" "C:\Retro/ZPUino_SOC/RetroCade-1.1-zpuino-1.0-PapilioPro-S6LX9-RetroCade-1.1.bit" -s -q -x" (which does not exist on my system, the loader is in "C:\Program Files (x86)\Gadget Factory\Papilio Loader\" and the working directory is """C:\Retro/../Papilio Loader/""" which is also wrong. I did update now manually and it worked, but maybe you should take another look at how the setup created the links.

Cheers,

Toby

Share this post


Link to post
Share on other sites

Mmmh, strange, the update does somehow still not seem to have worked, I think.

 

When I run the Papilio Loader with the 1.1 bitfile and the RetroCade connected via USB (and no other USB devices), with the following settings:

Target board: Auto-detect FPGA

Target .bit file: C:\Retro\ZPUino_SOC\RetroCade-1.1-zpuino-1.0-PapilioPro-S6LX9-RetroCade-1.1.bit

 

I get the following output (the Retrocade LCD screen goes complete blue during this, then starts the SpaceInvaders again):

 

JTAG chainpos: 0 Device IDCODE = 0x24001093    Desc: XC6SLX9
Using devlist.txt
Created from NCD file: xform.ncd
Target device: v1000efg860
Created: 2001/08/10 06:55:04
Bitstream length: 24085080 bits

Uploading "C:\Retro\ZPUino_SOC\RetroCade-1.1-zpuino-1.0-PapilioPro-S6LX9-RetroCade-1.1.bit". DNA is 0x1962ce0e46db36ff
Done.
Programming time 8123.5 ms
USB transactions: Write 1479 read 7 retries 0
 

BUT when I then step through the menus, I don't see any of the new SID stuff and the About screen still says "RetroCade Synth Version 1.0" - how can that be? Did the update fail or am I on the new version and just don't know it yet?

 

 

 

EDIT: Ah, ok, I think I have to switch "Write to:" from "FPGA" to "SPI Flash"! Doing that the update takes much longer but also finished successfully - but after that the screens stays lit up in a bright blue and also when reconnecting, nothing changes. Did I brick it somehow? Can anyone help?

Sorry for the stupid questions...

Share this post


Link to post
Share on other sites

Interestingly, I seem to have the exact same problem as Nitz76 in this thread: http://forum.gadgetfactory.net/index.php?/topic/1591-newbie-spi-flash-programming-issue/page-3

Jack, did you have any success determining the cause of why NItz76 FPGA was acting strange?

As I said, my RetroCade synth was working fine with the initial firmware all the time until I tried updating today to 1.1, now I can't use it anymore :-(

 

On another note, trying to compile the 1.1 sketch in Arduino gives an error abou tmissing sidplay.h - you probably should add that to the source release as well :)

Share this post


Link to post
Share on other sites

Mmmh, strange, the update does somehow still not seem to have worked, I think.

 

When I run the Papilio Loader with the 1.1 bitfile and the RetroCade connected via USB (and no other USB devices), with the following settings:

Target board: Auto-detect FPGA

Target .bit file: C:\Retro\ZPUino_SOC\RetroCade-1.1-zpuino-1.0-PapilioPro-S6LX9-RetroCade-1.1.bit

 

I get the following output (the Retrocade LCD screen goes complete blue during this, then starts the SpaceInvaders again):

 

JTAG chainpos: 0 Device IDCODE = 0x24001093    Desc: XC6SLX9

Using devlist.txt

Created from NCD file: xform.ncd

Target device: v1000efg860

Created: 2001/08/10 06:55:04

Bitstream length: 24085080 bits

Uploading "C:\Retro\ZPUino_SOC\RetroCade-1.1-zpuino-1.0-PapilioPro-S6LX9-RetroCade-1.1.bit". DNA is 0x1962ce0e46db36ff

Done.

Programming time 8123.5 ms

USB transactions: Write 1479 read 7 retries 0

 

BUT when I then step through the menus, I don't see any of the new SID stuff and the About screen still says "RetroCade Synth Version 1.0" - how can that be? Did the update fail or am I on the new version and just don't know it yet?

 

 

 

EDIT: Ah, ok, I think I have to switch "Write to:" from "FPGA" to "SPI Flash"! Doing that the update takes much longer but also finished successfully - but after that the screens stays lit up in a bright blue and also when reconnecting, nothing changes. Did I brick it somehow? Can anyone help?

Sorry for the stupid questions...

 

Yes, it definitely needs to be written to SPI Flash, you are on the right track. Try to write it to SPI Flash again, maybe something happened during the programming... It looks like the installer did not handle changing the install location very well...

 

Interestingly, I seem to have the exact same problem as Nitz76 in this thread: http://forum.gadgetfactory.net/index.php?/topic/1591-newbie-spi-flash-programming-issue/page-3

Jack, did you have any success determining the cause of why NItz76 FPGA was acting strange?

As I said, my RetroCade synth was working fine with the initial firmware all the time until I tried updating today to 1.1, now I can't use it anymore :-(

 

On another note, trying to compile the 1.1 sketch in Arduino gives an error abou tmissing sidplay.h - you probably should add that to the source release as well :)

 

I need to make a new release of the ZAP IDE before the source code will work. You can download the ZAP IDE from github, I was trying to get together several other libraries for a new ZAP IDE release.

Share this post


Link to post
Share on other sites

Hi Jack,

thanks for your help. :-)

 

Concerning the installer: I think it does not like to be installed on top-level directories.

 

Well I tried several times to flash the SPI (also with older versions of the firmware), I always get output like this (which looks ok to me):

 

JTAG chainpos: 0 Device IDCODE = 0x24001093    Desc: XC6SLX9
Using devlist.txt
JTAG chainpos: 0 Device IDCODE = 0x24001093    Desc: XC6SLX9

Uploading "C:\Program Files (x86)\Gadget Factory\Papilio Loader\programmer\bscan_spi_xc6slx9.bit". DNA is 0x1962ce0e46db36ff
Done.
Programming time 915.1 ms

Programming External Flash Memory with "C:\Program Files (x86)\Gadget Factory\RetroCade Synth\ZPUino_SOC\RetroCade-1.1-zpuino-1.0-PapilioPro-S6LX9-RetroCade-1.1.bit".
Found Macronix Flash (Pages=32768, Page Size=256 bytes, 67108864 bits).
Programming :
Using devlist.txt
..............................................Ok
Done.
SPI execution time 154297.8 ms
USB transactions: Write 35460 read 35291 retries 0
JTAG chainpos: 0 Device IDCODE = 0x24001093    Desc: XC6SLX9
Using devlist.txt

ISC_Done       = 1
ISC_Enabled    = 0
House Cleaning = 1
DONE           = 1
 

 

Unfortunately, the LCD display stays brightly lit, but without any displayed text and nothing happens,, even after disconnecting and reconnecting :-(

Any idea what else I could try?

Thanks,

Toby

Share this post


Link to post
Share on other sites

Ahhhhhhh, ok. This happened to me, please do the following:

 

  • Change the Papilio Loader to expert mode from preferences
  • Make sure that Erase, Write To, and Verify are all active. The buttons should be blue.
  • Try it again.

It seems that by default it is only doing a write to which is not clearing out the SPI Flash contents and causing a problem. I need to look into the default settings for the latest Papilio Loader release...

 

Let me know how that goes.

Jack.

Share this post


Link to post
Share on other sites

Oh, when you change to expert mode you will have to restart Papilio Loader before it changes to expert mode.

Share this post


Link to post
Share on other sites

YES!!!!! Expert mode worked - now I have a working RetroCade again with v1.1. Thanks, Jack!

Share this post


Link to post
Share on other sites

Ahoy Jack,

 

I've grabbed the latest RetroCade Sketch from GitHub, and merged all the missing files from "Lite" into the updated full sketch, but it's still missing sidplayer.h

 

Do you have an ETA for when the Sketch source with analogue filters/sidplayer will be available? I've been waiting for it to resume my Performance Mode features/enhancements.

Share this post


Link to post
Share on other sites

Hello Gadgetoid!

 

Sorry for the delay, I've moved the RetroCade source code into the ZAP IDE instead of maintaining a separate release for the RetroCade. I've been holding off on a ZAP release because there are a bunch of new libraries that are just about ready, but I think that I better just bite the bullet and make a new release for the SID filters. The other libraries seem to keep dragging along...

 

I'll work on a new release for today or tomorrow, in the meantime - all the sid changes are checked into the github master.

https://github.com/GadgetFactory/ZAP--ZPUino-Arduino-Papilio--IDE

 

Jack.

Share this post


Link to post
Share on other sites

is all the things for the retrocade fixed now?, like noteoff and such things?, my retrocade have been sitting on the sheld collecting dust together with my midi keyboard, would be cool to try it again.

The feature of playing sidfiles are not very interresting, it's more interresting to use the whole thing as an synth module, which I thought was the point in the first place?

Share this post


Link to post
Share on other sites

Yes, the latest release has all of the fixes and it also supports the Analog features of the SID chip as well as playing SID files.

 

Jack.

Share this post


Link to post
Share on other sites

 it's more interresting to use the whole thing as an synth module,

 

I've been working on a set of changes that add in-system patch modification, keyboard splits and more functionality for supporting live play. All things you'd expect from a performance synth.

 

It's been on the back-burner for a few months while I waited for this update, but I hope to get it all up to scratch soon.

Share this post


Link to post
Share on other sites

Has anyone looked into the problem I was seeing with some SID files not playing? I haven't had a chance to try a recent release.

Share this post


Link to post
Share on other sites

Sorry, I haven't had much time to dig into those SID files.

 

Jack.

Share this post


Link to post
Share on other sites

How are the SID filters controlled?  I don't see controls for them in the dashboard, are they mapped to CC messages?

1 person likes this

Share this post


Link to post
Share on other sites

Ahhh, I was so excited to be adding SID functionality that I never added CC's or controls in the Dashboard. Will try to make some time to get that updated.

 

Jack.

Share this post


Link to post
Share on other sites

These 4 registers?:

 

 
#define SID_ADDR_FILTER_FC_LOW       0x15
#define SID_ADDR_FILTER_FC_HI        0x16
#define SID_ADDR_FILTER_RES_FILT     0x17
#define SID_ADDR_FILTER_MODE_VOL     0x18
 
So in the current release only the SID player writes to these addresses, is that a correct assessment?  Functions need to be added to the SIDVoice class to set them, and then CC messages added to the handler?  If so then I think I can make that happen.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now