6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Thu Nov 21, 2024 5:28 pm

All times are UTC




Post new topic Reply to topic  [ 43 posts ]  Go to page Previous  1, 2, 3
Author Message
PostPosted: Thu May 09, 2019 3:45 am 
Offline

Joined: Sat Apr 13, 2019 10:25 pm
Posts: 15
I got a video transmitter working on the FPGA using the Pynq's built-in HDMI port. Got a few simple programs to run. Some of the programs have odd results.

I tried to draw a pixel moving across the screen from left to right. Here is the part of the code that draws the pixel:

Code:
ldy ballX
lda #$ff
sta (pixelAddrL),y


pixelAddrL,pixelAddrH contains the address of the pixel row. ballX is incremented every so often. But instead of moving from left to right, the pixel suddenly jumps several rows down and to the right whenever ballX is increased.

This made me think I miswired some address lines, so I tried to check. I found that if I nudge the wires with my finger, the '816 suddenly fails and goes into a brk-loop. This makes me think my setup isn't stable enough, and that might be what's causing odd behavior.


Top
 Profile  
Reply with quote  
PostPosted: Thu May 09, 2019 1:13 pm 
Offline

Joined: Wed Mar 02, 2016 12:00 pm
Posts: 343
SpaceCoaster wrote:
I did what I could to preserve my sanity by using this open hardware board from BlackMesaLabs for video output from an FPGA. It uses a TI TP410.


Remember that HDMI requires a license (if you want to sell this). VGA and Displayport are free.


Top
 Profile  
Reply with quote  
PostPosted: Fri May 10, 2019 4:07 am 
Offline

Joined: Sat Apr 13, 2019 10:25 pm
Posts: 15
My assembler was mishandling sta (pixelAddrL),y. I was using dj-on-github's py6502 (https://github.com/dj-on-github/py6502) because it ran smoothly in the Pynq's programming environment. Fixed the problem.

Now the pixel moves across the screen, but very fast. I'm going to have to implement a timer.


Top
 Profile  
Reply with quote  
PostPosted: Wed May 22, 2019 3:59 am 
Offline

Joined: Sat Apr 13, 2019 10:25 pm
Posts: 15
The '816 can now run programs!

https://youtu.be/Qlqry14JsGg


Top
 Profile  
Reply with quote  
PostPosted: Wed May 22, 2019 9:49 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10985
Location: England
HELLO WORLD!

well done.


Top
 Profile  
Reply with quote  
PostPosted: Sat Jan 11, 2020 9:37 am 
Offline

Joined: Mon Nov 25, 2019 4:46 am
Posts: 19
indeed well done!

have you implemented the full 24 bit address space?


Top
 Profile  
Reply with quote  
PostPosted: Wed Jan 22, 2020 1:04 am 
Offline

Joined: Mon Nov 25, 2019 4:46 am
Posts: 19
I purchased a Spartan 6 FPGA board to play along with interfacing a 65c816 to some DDR3 memory. here's the link, https://www.aliexpress.com/item/1000006703110.html my interest is in building up a memory manager unit for the 816 along with including the common glue logic needed to multiplex the high order address bit for the processor.


Top
 Profile  
Reply with quote  
PostPosted: Wed Jan 22, 2020 9:44 pm 
Offline

Joined: Mon Mar 02, 2009 7:27 pm
Posts: 3258
Location: NC, USA
What are you using the DDR3 for? Program memory or video memory?

_________________
65Org16:https://github.com/ElEctric-EyE/verilog-6502


Top
 Profile  
Reply with quote  
PostPosted: Thu Jan 23, 2020 2:20 am 
Offline

Joined: Mon Nov 25, 2019 4:46 am
Posts: 19
ElEctric_EyE wrote:
What are you using the DDR3 for? Program memory or video memory?


I plan to use the DDR3 for general program memory, going to bootstrap the board by loading the RAM and using it for both RAM/ROM space.


Top
 Profile  
Reply with quote  
PostPosted: Thu Jan 23, 2020 9:02 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10985
Location: England
I just looked at the board specs: it's got an LX25 on there, which has some 100kbyte of block RAM - enough for most 6502 retrocomputing purposes! And just £20.

It will be interesting to see how you get on with DDR3 - many projects use SRAM or PSRAM as the interface is much easier to deal with.


Top
 Profile  
Reply with quote  
PostPosted: Thu Jan 23, 2020 9:38 pm 
Offline

Joined: Mon Nov 25, 2019 4:46 am
Posts: 19
I went with DDR3 in preference to older technologies such as classic SRAM due to it's abundant availability, with such abundance affords in memory software projects that were once unimaginable can be realized. bragging rights aside I'd really like to see that classic hardware can do with access to 4+ Gigs of ram.


Top
 Profile  
Reply with quote  
PostPosted: Fri Jan 24, 2020 8:31 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10985
Location: England
It would certainly be good to see SDRAM, or DDR{,2,3} running sweetly on a retro project. In fact I think SDRAM has been done - but the access time is quite lumpy, IIRC. These technologies are at their best doing cache-line refills, not random byte access. But in any case, they should work.


Top
 Profile  
Reply with quote  
PostPosted: Fri Jan 24, 2020 6:04 pm 
Offline

Joined: Mon Nov 25, 2019 4:46 am
Posts: 19
BigEd wrote:
It would certainly be good to see SDRAM, or DDR{,2,3} running sweetly on a retro project. In fact I think SDRAM has been done - but the access time is quite lumpy, IIRC. These technologies are at their best doing cache-line refills, not random byte access. But in any case, they should work.


yes I am seeing that as I look into the matter more, it seems the best I may be able to do is bank switching segments of ram in/out of the internal ram in the FPGA.

edit- I am currently exploring the option of using the 100KB or so of memory in the FPGA use as SRAM and having that swapped into/out of the DDR3, it seems like a good compromise between what the 65c816 is accustomed to operate and how DDR3 is optimized for performance. the real question I have for myself is how messy things can get if I configure it for smaller page sizes and memory mapping.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 43 posts ]  Go to page Previous  1, 2, 3

All times are UTC


Who is online

Users browsing this forum: No registered users and 8 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron