Fusion-6502 - The bridge between Old and New

For discussing the 65xx hardware itself or electronics projects.
User avatar
Arlet
Posts: 2353
Joined: 16 Nov 2010
Location: Gouda, The Netherlands
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by Arlet »

I've tested a bunch of SD cards, and so far all of them work fine with SPI.

You do need to distinguish between MMC, SDv1, SDv2, and SDHC cards, though, and good documentation is hard to find.
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by Oneironaut »

Thanks for the info.
It would be ironic that the only component in this project that may not have a stable future would be the SD card!
My FPGA code will be portable to any futire offering, and the 65C02 also seem to be immortal.
But I don't want to design around SPI and then find out it is extinct in 2-3 years.
Glad to year all of your tests worked. From what I read SPI is no longer required for the spec though.
Seems SPI SD is where NTSC Video and PS2 Keyboards were a few years back.... on the brink.
Analog VGA was supposed to be there as well, but it is still alive and kicking.

I will poke around on the AVR world and see if there are some robust SD examples I can learn from.

I did make one decision though, which is that the 6502 will handle the boot menu itself.
The FPGA will simply hold a 1-2k boot program, and stuff it into program memory on startup.
This makes the most sense for two reasons...

1) It will be easier to do (and with less resources) with a real processor than straight Verilog code.
2) It will much cooler to have the 6502 greet you on startup, and then take control of the boot process.

So if I do go the SD Card route, the 6502 will have to handle the hardware and FAT.
I will code it in such a way as once a stream is loaded, it will overwrite most of the menu code space.

As with all of my works in progress, this plan could change if I find a more suitable storage medium.
The single IC cartridge still has a lot of appeal.

Brad
User avatar
GARTHWILSON
Forum Moderator
Posts: 8775
Joined: 30 Aug 2002
Location: Southern California
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by GARTHWILSON »

If SPI SD cards' future is questionable, you can buy up a lifetime supply now while you know you can get them. They're cheap in the lower densities that are more likely to be appropriate with a 6502. I can't imagine needing a card that holds a dozen feature-length movies with a 6502.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by Oneironaut »

Indeed, I have been know to stock pile everything!
Every IC drawer I have contains no less than 32 of the same part.

But Fusion-6502 is going to be a release, so I want to use components that have some life left.
I will probably run some boards as well.

Nothing worse than seeing a great DIY project on the web, only to find out later that to build it you will have to find some long obsolete part on ebay. In this project, the only single source component is the 65C02, but WDC has an unbeatable track record so far!

I will probably test my drawer of 20 or so misc. SD cards (some new, some old), and see how many work with SPI.
If I find that more than half are problematic, then I will move on to the SPI flash idea instead.

Brad
GARTHWILSON wrote:
If SPI SD cards' future is questionable, you can buy up a lifetime supply now while you know you can get them. They're cheap in the lower densities that are more likely to be appropriate with a 6502. I can't imagine needing a card that holds a dozen feature-length movies with a 6502.
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by Oneironaut »

On my hour long commute through the timberline today, I thought of another option for connecting Fusion to the outside World.
This options may satisfy both my requirement for direct PC programming, and the feel of a cartridge for stand-alone operation...

...FTDI FT232.

I could put in an SPI flash cartridge, and then use the USB link to the PC to directly program it.
Compile a program in the 6502 assembler, then press a single button on my converter to upload.
If I end up with a final program or demo I like, then I would just pop in another cartridge.

This eliminates having to worry about SD SPI life-cycle, and allows any external memory device to be used.
By using even an 8 pin port, adapting to future storage devices would be a simple code change.

Hmmm.... I think I just convinced myself after all that typing out loud!

OK, sold!
No more talk, talk is cheap... off to develop some real hardware now.

Cheers,
Brad
User avatar
Arlet
Posts: 2353
Joined: 16 Nov 2010
Location: Gouda, The Netherlands
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by Arlet »

I haven't tested the very latest SD cards for SPI, so maybe there is a problem I'm not aware of.

I was just going to suggest a SPI flash cartridge, when I saw your last message. LOL.
User avatar
ttlworks
Posts: 1464
Joined: 09 Nov 2012
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by ttlworks »

Another interesting chip from FTDI would be the FT4222, a USB2.0 to SPI bridge.

Unfortunately, from the datasheet the SPI related pins can take 4V max.,
so one would have to stick with 3.3V...
...or to use a 74LVC245 as a 5V\3.3V level translator in a 5V powered system.

http://www.ftdichip.com/Products/ICs/FT4222H.html

The bad thing about that chip is, that the USB descriptor and the hardware config
is defined in an OTP ROM inside the chip... :)
//FT4222 "is supposed to work" without burning the ROM.

;---

If there is a problem with SPI SD cards, maybe one could try to build a little PCB
with one or more little SPI FLASH ROMs like the Micochip SST26VF032B
(8 pins, 4MB, unfortunately not available in DIP package).

I think that 4MB already is a lot of memory for a single 6502 program.

;---
Quote:
Indeed, I have been know to stock pile everything!
Every IC drawer I have contains no less than 32 of the same part.
Same thing here when I was active.
At some point I had problems getting hands on TTL chips, that's why I had built that transistor CPU...
User avatar
GARTHWILSON
Forum Moderator
Posts: 8775
Joined: 30 Aug 2002
Location: Southern California
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by GARTHWILSON »

ttlworks wrote:
Another interesting chip from FTDI would be the FT4222, a USB2.0 to SPI bridge.

Unfortunately, from the datasheet the SPI related pins can take 4V max.,
so one would have to stick with 3.3V...
...or to use a 74LVC245 as a 5V\3.3V level translator in a 5V powered system.
It's nice that SPI's lines are all unidirectional, making voltage translation easy.

Quote:
If there is a problem with SPI SD cards, maybe one could try to build a little PCB
with one or more little SPI FLASH ROMs like the Micochip SST26VF032
(8 pins, 4MB, unfortunately not available in DIP package).

I think that 4MB already is a lot of memory for a single 6502 program.

Agreed, and I just got 33 tiny boards made for the 25VF032 4MB and 25VF064 8MB flashes. (I think 26VF has the same pinout too, but I'd have to check.) I've built one up and it works, but I didn't realize the 25VFxxx 8-pin IC is a little wider than a normal SO-8, so I had to bend the pins under, taking them from inverted gull wing shape to a J-lead shape to solder them.
OnSO-8pads1.jpg

40% of the board is just there as a handle, and to have something to write small labels on. After testing, I put epoxy over circuit (the green part of the board), except the pins of the 90° write-protect header. The whole thing, including the black socket, takes about half the area of an SD card, but is much more hobbyist-friendly, both in the connector and in the signals.

It works fine but manually J-leading the IC adds to the labor. I'll probably re-do the board so I can add it to the modules I offer. [Edit, later: Done. See the front page of my site.] I need to come up with a name for the hobbyist-friendly SPI connector devised for many different things, with power, a config line (which has other uses too), RST\, and IRQ\. [Edit, later: It's SPI-10.] (The flash module doesn't use all of these, but some other devices will.) It's ten pins but one is cut out and the hole in the socket is plugged, so you can't plug it in backwards or offset.

Other ones coming next will probably be a tiny I²C EEPROM module [Edit, 7/28/22: the I2C-6 EEPROM module is on the front page of my site now, and there's a link to the data sheet there], a tiny I²C RTC module (these two being I2C-6 modules), a 40-pin DIP 65802 module made with a PQFP '816 and logic in SOICs, and some sort of '816 module that pre-loads RAM with a bootloader from a microcontroller, and maybe Jeff's ultrafast I/O.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
User avatar
ttlworks
Posts: 1464
Joined: 09 Nov 2012
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by ttlworks »

Sorry, Garth...
There is an EOL notification from April 2015 at the Microchip homepage about SST25VF032B, SST25VF064C.
PDF from Microchip for migrating from SST25* to SST26*:
20005343A.pdf
(110.7 KiB) Downloaded 84 times
From the pinouts in the datasheets, it looks like 26VF032B might work with your PCB,
but I'm not sure about the compatibility of the innards of SST25* versus SST26*,
memory layout for instance is different.
GARTHWILSON wrote:
It's nice that SPI's lines are all unidirectional, making voltage translation easy.
That yes, but there also is SQI.
SQI is something similar to SPI, but with one SCK line and 2 or 4 bi_directional data lines...

BTW: 26VF032B and FT4222 support SPI and SQI.

Amazing, how fast a hardware design is getting obsolete nowaday after you got it up and running, isn't it ? ;)
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by Oneironaut »

Thanks for the comments, always good to have all these ideas during the development stage.

I am cool with 3.3v, as my entire board is only 3.3v, including the 65C02.
In keeping with the specs, it is purring along nicely at 8MHz at 3.3v right now.

Thanks Garth, nice looking mini-boards! I wish I had one of those in front of me right now.
I dug around my parts boxes, and only found small SPI flash memories and not FT232 IC.
Odd... I was sure I had 8Mb flash and a few FTDI chips in there someplace!

No problem, it's time to give Digikey another $200 minimum order anyhow!

Right now I am designing a PC program to handle the bridge between old and new.
I am working up a simple binary file system that will allow the flash to hold program and data.

Here is my tentative goal at this point...

Custom file system that can give the FPGA handles on 64K programs and variable size data chunks.
File system built into the FPGA to allow the 6502 to retrive a list of Program File Names and Data File Names.
FPGA will stuff the 6502 with a menu system that will then read the SPI and display a load screen similar to the C64 Disk List.

The PC side software will simply take Bitmap and Wave data and turn them into a single large Data File with an index at the beginning.
Since my FPGA "core" has been coded as 32 bit, I could technically have a file as large as 4Gb if there was such a flash memory available.
As for the actual 6502 program, it will just be the Binary 64K Image File as saved directly from the Kowalski Assembler.

Using the Direct PC Link, my program will be able to transfer these assets directly to the Flash Cartridge.
After a transfer, the PC will signal a reset, so I can just develop directly on the PC without having to transfer any storage device.

This will allow for the rapid "try and see" type of coding I prefer...

1) Write 6502 code, assemble, and export the binary image.
2) Press "Upload" on my program and wait a few seconds.
3) See the results up on the Fusion-6502 monitor.
4) Fix what's broken, and go back to step 1!

So I guess what I am really doing is making an SPI Flash based high capacity 1541 Disk Drive!
Maybe it needs some audio simulation... Whirrrrrr, tick,tick,tick,tick, Brakkkka! Brakkkka! Brakkkka! tick, tick tick!

Thanks,
Brad
User avatar
GARTHWILSON
Forum Moderator
Posts: 8775
Joined: 30 Aug 2002
Location: Southern California
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by GARTHWILSON »

ttlworks wrote:
Sorry, Garth...
There is an EOL notification from April 2015 at the Microchip homepage about SST25VF032B, SST25VF064C.
Yes, and I was unhappy to see they were unavailable at the major distributors when I went to buy some last month. I was happy to find them on eBay, and I bought 15 to augment the few I already had. That should keep me pretty much for life. The 26VF is pin-compatible, and powers up in SPI mode. You have to issue an Enable Quad I/O command if you want the four-bit interface. The reason I didn't want the 26 is because there are small driver-software differences and I already had working software to run the 25. For someone who doesn't already have such a software investment, it may not matter, and the same board would work.
Quote:
GARTHWILSON wrote:
It's nice that SPI's lines are all unidirectional, making voltage translation easy.
That yes, but there also is SQI.
SQI is something similar to SPI, but with one SCK line and 2 or 4 bi_directional data lines...
Fortunately you don't have to use SQI mode if you don't want to.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
User avatar
ttlworks
Posts: 1464
Joined: 09 Nov 2012
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by ttlworks »

Quote:
So I guess what I am really doing is making an SPI Flash based high capacity 1541 Disk Drive!
Maybe it needs some audio simulation... Whirrrrrr, tick,tick,tick,tick, Brakkkka! Brakkkka! Brakkkka! tick, tick tick!
Hmm... and I already had expected to see something like 1530 Datassette implementation using 'magnetic wire recording' someday. ;)
https://en.wikipedia.org/wiki/Wire_recording
User avatar
BigDumbDinosaur
Posts: 9428
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by BigDumbDinosaur »

ttlworks wrote:
Quote:
So I guess what I am really doing is making an SPI Flash based high capacity 1541 Disk Drive!
Maybe it needs some audio simulation... Whirrrrrr, tick,tick,tick,tick, Brakkkka! Brakkkka! Brakkkka! tick, tick tick!
Hmm... and I already had expected to see something like 1530 Datassette implementation using 'magnetic wire recording' someday. ;)
https://en.wikipedia.org/wiki/Wire_recording
I'm old enough to recall when wire recorders were still in use in office settings. They definitely weren't high fidelity! :D
x86?  We ain't got no x86.  We don't NEED no stinking x86!
User avatar
GARTHWILSON
Forum Moderator
Posts: 8775
Joined: 30 Aug 2002
Location: Southern California
Contact:

Re: Fusion-6502 - The bridge between Old and New

Post by GARTHWILSON »

Oneironaut wrote:
So I guess what I am really doing is making an SPI Flash based high capacity 1541 Disk Drive!
This might be of interest:
http://www.nkcelectronics.com/sd2iec-boar2.html
It's an SD-card-to-IEC adapter, to be able to use SD cards on the C64.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
Martin_H
Posts: 837
Joined: 08 Jan 2014

Re: Fusion-6502 - The bridge between Old and New

Post by Martin_H »

GARTHWILSON wrote:
Oneironaut wrote:
So I guess what I am really doing is making an SPI Flash based high capacity 1541 Disk Drive!
This might be of interest:
http://www.nkcelectronics.com/sd2iec-boar2.html
It's an SD-card-to-IEC adapter, to be able to use SD cards on the C64.
That SD to IEC adapter from NKC has been out of stock for a long time. But you can purchase them on eBay as well as a few websites. In this thread viewtopic.php?f=4&t=3385 I talk about my purchase of an SD2IEC evo2. Here's a video of my current setup:

https://www.youtube.com/watch?v=3xhU65KX8rY
Post Reply