Beeb FPGA

for bbc micro/electron hardware, peripherals & programming issues (NOT emulators!)
User avatar
adrm
Posts: 168
Joined: Sun Sep 10, 2017 12:07 pm
Location: Norway
Contact:

Re: Beeb FPGA

Post by adrm » Wed Jan 24, 2018 7:59 pm

adrm wrote: I do notice that MODE 7 text is no better than on the DE2.
I thought the DE1's "simpler" circuitry would give a better result, but maybe I misunderstood?
Ok, here's Hoglet's statement on this:
Hoglet wrote:One more thing... Mode 7 when using sRGB mode to a SCART TV looks perfect, and is indistinguishable from a real Beeb:
This was possibly explained in the past (if so, sorry), but how do I get sRGB mode on the DE1?
-------
Tore

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Wed Jan 24, 2018 10:30 pm

adrm wrote: This was possibly explained in the past (if so, sorry), but how do I get sRGB mode on the DE1?
Switch 7 and 8 in the down position.

Then you need a VGA to SCART cable, and Hsync on VGA connected to Composite Sync on SCART.

(Very few VGA monitors will work at 15.625KHz line frequency).

crj
Posts: 846
Joined: Thu May 02, 2013 4:58 pm
Contact:

Re: Beeb FPGA -> My new (used) DE1

Post by crj » Wed Jan 24, 2018 11:06 pm

hoglet wrote:More likely the USB keyboard doesn't support PS/2 mode, or the PS/2 adapter is a mouse adapter, not a keyboard adapter.
Mmm. There's no reason to believe a keyboard with a USB A plug can also do PS/2 unless it came with an adapter.

If you do use some random adapter you have lying around, make sure it's purple and/or with a keyboard symbol moulded into it, rather than green and/or with a mouse symbol.

The only general purpose adapter I know of that allows you to plug USB keyboards and mice into PS/2 computers is the Adder KMU2P. It's the best part of a hundred quid.

User avatar
adrm
Posts: 168
Joined: Sun Sep 10, 2017 12:07 pm
Location: Norway
Contact:

Re: Beeb FPGA

Post by adrm » Thu Jan 25, 2018 8:26 am

I'm sure what you guys say is true in general.
However, it seems I've been lucky.

The following items work fine with both my DE1 and the DE2:
  • Cheapo Advent USB keyboard
  • Random green, i.e. for mouse, USB to PS/2 adapter
Will these play nice forever?
Only time will tell. Thing is; it's getting harder to find PS/2 keyboards these days. Next to impossible to pick up in local shops here, afaik.
-------
Tore

User avatar
adrm
Posts: 168
Joined: Sun Sep 10, 2017 12:07 pm
Location: Norway
Contact:

Re: Beeb FPGA

Post by adrm » Thu Jan 25, 2018 8:31 am

hoglet wrote:
adrm wrote: This was possibly explained in the past (if so, sorry), but how do I get sRGB mode on the DE1?
Switch 7 and 8 in the down position.

Then you need a VGA to SCART cable, and Hsync on VGA connected to Composite Sync on SCART.

(Very few VGA monitors will work at 15.625KHz line frequency).
Thanks.

Given the lack of SCART inputs in my current screens, and reluctance to add yet another unit just for this purpose, I think I'll pass on the idea after all.

I guess I could try getting the VGA->SCART cable and try running it through my excellent SCART->HDMI converter box, but I'm guessing this will be a bit of a hit or miss prospect.
-------
Tore

User avatar
fordp
Posts: 1033
Joined: Sun Feb 12, 2012 9:08 pm
Location: Kent, England
Contact:

Re: Beeb FPGA

Post by fordp » Thu Jan 25, 2018 9:02 am

My TV works at both TV and VGA rates through the VGA input. I then use the Scart input for my real Beebs.
FordP (Simon Ellwood)
Time is an illusion. Lunchtime, doubly so!

Coeus
Posts: 1402
Joined: Mon Jul 25, 2016 11:05 am
Contact:

Re: Beeb FPGA

Post by Coeus » Thu Jan 25, 2018 1:49 pm

hoglet wrote:The above disk image has an edited RUNNER script with the lines that load the M2 and M4 modules removed. These modules hang if the Music 2000 and Music 4000 hardware is not present. This happens on real hardware as well, see this and this.
So this would be the version I got from you in connection with M5000 in B-Em. Interestingly, when I went to implement M4000 emulation in B-Em it was the presence or absence of the actually keyboard that was causing the issue but that the emulated VIA didn't emulate the shift register.

Interestingly, the M500 version, AMPLE BCE, seems to probe for the keyboard anyway rather than having a loadable module which explains why I sometimes got get bad card errors with MMFS after using it.

Higgy
Posts: 24
Joined: Wed Jan 25, 2017 1:32 pm
Contact:

Re: Beeb FPGA

Post by Higgy » Fri Mar 30, 2018 3:22 pm

Hi hoglet - I've not been around for quite some time (you last helped on the Castle Quest fix).

I finally got around to looking at updating the main MMB with the fixed Uridium, and I was adding 'White Light' (although I need to contact Retro Software to check it is ok).
On my White Light test with ZX Uno (BBC v1.3 Core) I noticed that if you die the screen just goes back and hangs. You don't get a 'Game Over' or High Score.
On the MiST you get the Game Over, but the scrolling is very jerky and there are screen glitches on title etc screens.

How does it run on your FPGA setup?

Thanks

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Fri Mar 30, 2018 4:00 pm

Higgy wrote: How does it run on your FPGA setup?
It runs very smoothly, but I get the hang/black screen as well at the end.

I've also just tried on my real Beeb, and that also gets the hang/black screen.

I think it's likely the problem is a memory conflict of some sort between White Light and MMFS.

I'll see if I can find out what this is.

slingshot
Posts: 2
Joined: Thu Sep 20, 2018 9:37 am
Contact:

Re: Beeb FPGA

Post by slingshot » Thu Sep 20, 2018 10:02 am

Hi!

I'm new to this forum, and just want to ask about SDRAM support in BeebFpga. I want to port it to the MiST board, which already has a port of an older version by Mike Stirling. The MiST doesn't have enough BRAM or any SRAM, but has a big SDRAM, so it would be perfect for the core. However during the port, I discovered that the signals for the external mermory are not really SDRAM friendly.
So the questions are:
- are they really need to be delayed one cycle (not a big problem, just I feel it's not necessary)?
- would there any problem with the video if only crtc enable cycles are used for RAM reading? Reading in every other cycle is not really possible with the SDRAM.

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Thu Sep 20, 2018 6:22 pm

slingshot wrote:
Thu Sep 20, 2018 10:02 am
I'm new to this forum, and just want to ask about SDRAM support in BeebFpga.
One additional feature, the 4MHz 6502 Co Processor, relies on being able to squeeze in additional accesses to the external RAM. I just don't think this is going to be possible with SDRAM.

There are some notes about this in the code:
https://github.com/hoglet67/BeebFpga/bl ... .vhd#L1078

Now, the current layout is far from optimal, for example I don't think every other cycle needs to be a video cycle. But still, I think it will be hard to get this working with SDRAM without loosing the Co Processor.

Dave
Last edited by hoglet on Thu Sep 20, 2018 6:23 pm, edited 1 time in total.

slingshot
Posts: 2
Joined: Thu Sep 20, 2018 9:37 am
Contact:

Re: Beeb FPGA

Post by slingshot » Thu Sep 20, 2018 6:44 pm

hoglet wrote:
Thu Sep 20, 2018 6:22 pm

Now, the current layout is far from optimal, for example I don't think every other cycle needs to be a video cycle. But still, I think it will be hard to get this working with SDRAM without loosing the Co Processor.

Dave
Thanks for the answer, I saw the co-processor, just I didn't consider this as a must-have. Working B and Master are my first goals.

User avatar
fordp
Posts: 1033
Joined: Sun Feb 12, 2012 9:08 pm
Location: Kent, England
Contact:

Re: Beeb FPGA

Post by fordp » Sun Sep 23, 2018 6:14 pm

hoglet wrote:
Thu Sep 20, 2018 6:22 pm
slingshot wrote:
Thu Sep 20, 2018 10:02 am
I'm new to this forum, and just want to ask about SDRAM support in BeebFpga.
One additional feature, the 4MHz 6502 Co Processor, relies on being able to squeeze in additional accesses to the external RAM. I just don't think this is going to be possible with SDRAM.

There are some notes about this in the code:
https://github.com/hoglet67/BeebFpga/bl ... .vhd#L1078

Now, the current layout is far from optimal, for example I don't think every other cycle needs to be a video cycle. But still, I think it will be hard to get this working with SDRAM without loosing the Co Processor.

Dave
The CoPro RAM could be in the SDRAM while the beebs 32K was placed in BlockRAM ?
FordP (Simon Ellwood)
Time is an illusion. Lunchtime, doubly so!

dominicbeesley
Posts: 911
Joined: Tue Apr 30, 2013 11:16 am
Contact:

Re: Beeb FPGA

Post by dominicbeesley » Mon Sep 24, 2018 10:28 am

What speed is the SRAM running at. I'd have to have a proper dig through my archive but my implementation of a BBC on an FPGA used SDRAM on the DE0 nano. I think I had it running at 8MHz, I can't remember what speed though.

It was certainly servicing the memory requests at 4MHz (the speed the beeb's real RAM runs at for interleaving with the display) to get the processor to run at 4MHz you might be able to do something funky and have the SDRAM run only at 6MHz?

...Quickly looking at the (horrible my first VHDL) code it looks like it was running at 8MHz but with 1/2 the cycles taken up for refreshes you might be able to do away with two of the refreshes? Or you can arrange for the screen accesses to do the refreshing?

D

Nico24
Posts: 16
Joined: Sun Nov 27, 2016 12:53 am
Contact:

Re: Beeb FPGA

Post by Nico24 » Tue Oct 30, 2018 5:59 pm

Hi - I have just loaded the BBC core onto the MIST fpga board. I don't seem to get the cool rounded BBC font. Does anyone know how I might be able to rectify this?

Thanks in advance!

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Tue Oct 30, 2018 6:26 pm

Nico24 wrote:
Tue Oct 30, 2018 5:59 pm
Hi - I have just loaded the BBC core onto the MIST fpga board. I don't seem to get the cool rounded BBC font. Does anyone know how I might be able to rectify this?
There are several different BBC Cores in existence. They all build on Mike Stirling's original work, but have gone in different directions, have different features, and run on different hardware.

The "BeebFPGA" core (that this thread is about) is the one that I maintain, and it's here I implemented character rounding (in 2015) and VideoNuLA (2018).

These features don't exist in the MIST BBC Core (written by Stephen Leary).

If you are an FPGA developer then porting might be possible, but it's quite a lot of work, as MIST has different memory timings constraints (being DRAM based).

So sorry, but there's not an easy fix.

Dave
Last edited by hoglet on Tue Oct 30, 2018 6:26 pm, edited 1 time in total.

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Sun Jul 28, 2019 10:42 am

Picking up on a post from a long time ago...
fordp wrote:
Mon Mar 06, 2017 9:57 pm
That's fine Dave. I have wanted to play with a Zync based board for a while. I have not got one yet but the above just seemed the best out there right now. I would not get one without someone like you to help as the HDL would be much too hard for me right now. I had a tinker with Beeb FPGA on my DE1 and made some progress in adding a couple of simple features. I should get back to that really. Maybe I should do an add on PCB for the DE1 first. I still would like to tinker with some of the missing bits like Econet and real floppy. I need to find some time to play.
I'm currently looking for a Zynq 7020 or Artix 35T/50T/100T based board for a project I'm working on that won't fit in a Spartan 6 LX9.

Did you ever get a Zynq board?
Last edited by hoglet on Sun Jul 28, 2019 10:44 am, edited 3 times in total.

User avatar
fordp
Posts: 1033
Joined: Sun Feb 12, 2012 9:08 pm
Location: Kent, England
Contact:

Re: Beeb FPGA

Post by fordp » Sun Jul 28, 2019 1:23 pm

I have not got round to doing much recently, I have been keeping an eye on the excellent work of others however. It is funny this should come up as I just watched this https://youtu.be/e5yPbzD-W-I today.
FordP (Simon Ellwood)
Time is an illusion. Lunchtime, doubly so!

User avatar
Elminster
Posts: 3978
Joined: Wed Jun 20, 2012 8:09 am
Location: Essex, UK
Contact:

Re: Beeb FPGA

Post by Elminster » Sun Jul 28, 2019 1:42 pm

I was looking at the icebreaker (5k) or the Arduino Vidor (16k) to start my fpga journey. But looking at the spec for a 7020 it has 7 or more times the logic, so I guess you are doing some monster project.

User avatar
TheCorfiot
Posts: 663
Joined: Mon Jan 08, 2007 5:22 pm
Contact:

Re: Beeb FPGA

Post by TheCorfiot » Tue Nov 19, 2019 9:43 am

Hi Everyone

Just Got my ole DE1 out of storage and aching to loadup the BeebFPGA package with M5000 support.

It's been so long though and I cant find my original downloads.

Can someone please upload or link the latest release for the FPGA and ROM files :)

a Gentle poke as to how to loadup the ROM files would be awesome too.

Thanks :)

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Tue Nov 19, 2019 10:24 am

TheCorfiot wrote:
Tue Nov 19, 2019 9:43 am
Just Got my ole DE1 out of storage and aching to loadup the BeebFPGA package with M5000 support.

It's been so long though and I cant find my original downloads.

Can someone please upload or link the latest release for the FPGA and ROM files :)

a Gentle poke as to how to loadup the ROM files would be awesome too.
There are some notes in this post:
viewtopic.php?f=3&t=10295&p=182384#p182384

And the switch settings are here:
https://github.com/hoglet67/BeebFpga/wiki

If you have run this previously, you probably already have the ROMs programmed into FLASH, so could try skipping that step.

I can't rebuild at the moment, as I'm struggling to re-install Quartus 13.01 on my new Ubuntu 18.04 system, due to certain shared libraries (libpng12.so.0) not being available.

Dave

User avatar
TheCorfiot
Posts: 663
Joined: Mon Jan 08, 2007 5:22 pm
Contact:

Re: Beeb FPGA

Post by TheCorfiot » Tue Nov 19, 2019 10:26 am

Cheers Dave

I'm rebuilding the project now, 363 warnings but no errors lol.
Have to work out how to add the VideoNULA bit you branched

Thanks :)

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Tue Nov 19, 2019 11:01 am

TheCorfiot wrote:
Tue Nov 19, 2019 10:26 am
I'm rebuilding the project now, 363 warnings but no errors lol.
I have Quartus running again now, and that's the same number as I'm seeing.
TheCorfiot wrote:
Tue Nov 19, 2019 10:26 am
Have to work out how to add the VideoNULA bit you branched
You just need to change to the videonula branch:

Code: Select all

git checkout videonula
And then rebuild in Quartus from there.

The default build options on that branch are:

Code: Select all

        IncludeAMXMouse    : boolean := false;
        IncludeSID         : boolean := false;
        IncludeMusic5000   : boolean := true;
        IncludeICEDebugger : boolean := false;
        IncludeCoPro6502   : boolean := true;  -- The three co pro options
        IncludeCoProSPI    : boolean := false; -- are currently mutually exclusive
        IncludeCoProExt    : boolean := false; -- (i.e. select just one)
        IncludeVideoNuLA   : boolean := true ;
        UseOrigKeyboard    : boolean := false;
        UseT65Core         : boolean := false;
        UseAlanDCore       : boolean := true
So you get a 6502 Co Pro, a Music 5000 and a VideoNuLA included.

Dave

User avatar
TheCorfiot
Posts: 663
Joined: Mon Jan 08, 2007 5:22 pm
Contact:

Re: Beeb FPGA

Post by TheCorfiot » Tue Nov 19, 2019 11:09 am

Thank you oh Genius :)

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Tue Nov 19, 2019 11:13 am

I probably should just merge the videonuma branch back into master.

And refresh the ROM images with the latest versions of MMFS.

I'll add that on the list of things to do at ABUG this weekend....

Dave

User avatar
hoglet
Posts: 8669
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Beeb FPGA

Post by hoglet » Tue Nov 19, 2019 12:21 pm

hoglet wrote:
Tue Nov 19, 2019 11:13 am
I'll add that on the list of things to do at ABUG this weekend....
Or maybe even sooner.... :D

I've merged everything back to master, updated MMFS to the latest version (1.44) and created an official binary release package:
https://github.com/hoglet67/BeebFpga/re ... 91119_1211

This is built with the following options enabled:
- 65C02 Main Processor (so both Beeb and Master modes work)
- 65C02 Co Processor
- Music 5000
- SID
- Video NuLA

Enjoy!

Dave

Post Reply