65c816 and xc2s200 problem
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
Hi
There is 65816 chip from WDC ( I will put my hands on t65 later on)
memory map (for now )
$0000 - $03fff ram
$0400- $07c0 - screen ram
$0800 - $0bc0 - color ram (8 bit per char)
fonts starts from (selected by register)
$2000 - $3000 - font ram (256 colors)
there is rs232 , ps2 for mouse and keyboard , hardware cursor (x,y pos. by registers) , background color , irq decoder , 24 bit timer . Cpu clock is selected by register (1,2,4,8,16 mhz) .
and now I'm working on the sound system (http://www.swinkels.tvtom.pl/swinsid/) , after that i planing to add
some multi color sprites and fonts .
There is 65816 chip from WDC ( I will put my hands on t65 later on)
memory map (for now )
$0000 - $03fff ram
$0400- $07c0 - screen ram
$0800 - $0bc0 - color ram (8 bit per char)
fonts starts from (selected by register)
$2000 - $3000 - font ram (256 colors)
there is rs232 , ps2 for mouse and keyboard , hardware cursor (x,y pos. by registers) , background color , irq decoder , 24 bit timer . Cpu clock is selected by register (1,2,4,8,16 mhz) .
and now I'm working on the sound system (http://www.swinkels.tvtom.pl/swinsid/) , after that i planing to add
some multi color sprites and fonts .
Last edited by bound on Wed Aug 25, 2010 6:19 pm, edited 2 times in total.
Swinsid in action .
Big thanks to Swinkels for his help and time .
http://www.youtube.com/watch?v=tr_IXEFt-PY
sound quality is just fantastic , much better then on this video.
here is a sample .
http://rapidshare.com/files/415105931/swinsid.ogg.html (change ext. to ogg)
Big thanks to Swinkels for his help and time .
http://www.youtube.com/watch?v=tr_IXEFt-PY
sound quality is just fantastic , much better then on this video.
here is a sample .
http://rapidshare.com/files/415105931/swinsid.ogg.html (change ext. to ogg)
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
I downloaded it. swinsid does do an excellent job of replicating the 6581. I'd love to have 32 or more of those AVR's running in unison! Good luck with the sprites!...
Can the T65 core actually fit onto a XC2s100?
You must post your work on the T65 core, or any 6502/65816 core here.
You would have many readers!
Can the T65 core actually fit onto a XC2s100?
You must post your work on the T65 core, or any 6502/65816 core here.
You would have many readers!
Hi ,
I have two of them running on low pin atmega88 @ 32mhz .
New firmware improves the sound quality .
I had T65 core working (with some problems) on my board long time ago.
I'm not a vhdl guru or something , but that wasn't a big problem to make that core working. The xc2s100 will handle T65 fine.
Thanks
I have two of them running on low pin atmega88 @ 32mhz .
New firmware improves the sound quality .
I had T65 core working (with some problems) on my board long time ago.
I'm not a vhdl guru or something , but that wasn't a big problem to make that core working. The xc2s100 will handle T65 fine.
Thanks
Hi few more words about swinsid chip , Swinsid is a greatest sound chip ever made for sbc's systems , almost 100% compatible with sid chip , and that give as possibility to use huge song library from the internet . I think most of as has a C64 background. There is only one problem with it .. maximum bus speed is around 1mhz. So , well , it's not fast enough , next step is to ask Swinkels to port that to some arm chip ( I don't know maybe lpc2103 will do ???) before I will do that i will have to know ... is' that make any sense to you?
Last edited by bound on Fri Sep 03, 2010 8:25 pm, edited 2 times in total.
I haven't researched too far in depth, but the 1MHz bus speed limit seems imposed by the software emulating a real 6502 bus device.
If you recode the interface to use some form of message passing, you can use the SPI interface to attain higher throughput, and communications with the device can even be asynchronous (meaning the host CPU can be off doing something else while commands to the swinsid are in transit; this requires deep buffers or DMA, though).
Alternatively, a simpler parallel port interface can be arranged and coupled to a VIA or similar parallel interface, I'm sure.
If none of these are options, you can create write buffers in an FPGA to translate high-speed writes to the swinsid to 1MHz writes for each device.
If you recode the interface to use some form of message passing, you can use the SPI interface to attain higher throughput, and communications with the device can even be asynchronous (meaning the host CPU can be off doing something else while commands to the swinsid are in transit; this requires deep buffers or DMA, though).
Alternatively, a simpler parallel port interface can be arranged and coupled to a VIA or similar parallel interface, I'm sure.
If none of these are options, you can create write buffers in an FPGA to translate high-speed writes to the swinsid to 1MHz writes for each device.
bound wrote:
Hi few more words about swinsid chip ,
Quote:
maximum bus speed is around 1mhz. So , well , it's not fast enough , next step is to ask Swinkels to port that to some arm chip ( I don't know maybe lpc2103 will do ???) before I will do that i will have to know ... is' that make any sense to you?
To use it with a faster CPU, you could slow down your CPU only while accessing the chip. The 6502's RDY pin is made exactly for that. Or buffering writes the the chip so that the CPU can continue while the actual write is still in progress (makes for an awfully complex bus interface, plus no reads or an even more complex bus interface)
André
wow. fachat thats the way my system works , I just slowing down cpu to 1MHZ bus , this not a solution . imagine when you system has interrupts made by video sysem working at 60hz . believe me , that's not good solution
Last edited by bound on Fri Sep 03, 2010 8:49 pm, edited 2 times in total.