Beeb FPGA port to Spectrum Next

discuss both original and modern hardware for the bbc micro/electron
User avatar
fordp
Posts: 1052
Joined: Sun Feb 12, 2012 9:08 pm
Location: Peterborough, England
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by fordp » Mon Dec 11, 2017 11:11 pm

northernbob wrote:afraid am gonna be slacking a bit, this week. its crazy party season going on here! am booked up for the next 7 days (well 6+1 star wars film)

` an external tube connection`

am a bit confused with your wording there. thats an actual circuit in the fpga?

btw, with regard to cores....is there a master core made up? how much larger would that be?

does the model b core inc any vram ? i believe tbblue has 128k of vram in the core.
surely the model b isnt vastly bigger than the z80 core, there must be some free fpga space to add, little extras?

AM rusty on bbc architecture in the 1988-1995 era. I played with a acorn pc in 1995, owned by one my computer lecturers at uni.
Which version of risc os, would that have run? v3?
which is the smallest risc cpu that can run risc os? I mean i guess the cpu from ` The A3010 model ` is too large for the fpga in the next?
btw am just thinking out loud/forward here!
Is the ARM250 an open core? is there something like this that would fit on the next.
WOuldnt a risc based cpu, be easier to accelerate, than a z80. I suspect am asking the wrong question there )

basically, which is the most advanced risc cpu, that fits on the next fpga, that can be accelerated to the `highest level` ? using the copro lever/crowbar!
Start here: https://github.com/hoglet67/PiTubeDirect/wiki
FordP (Simon Ellwood)
Time is an illusion. Lunchtime, doubly so!

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

Re: Beeb FPGA port to Spectrum Next

Post by hoglet » Tue Dec 12, 2017 7:35 am

northernbob wrote: ` an external tube connection`

am a bit confused with your wording there. thats an actual circuit in the fpga?
The "Tube" is the name Acorn gave to the interface used to connect a the Beeb's 6502 to a second processor:
https://en.wikipedia.org/wiki/Tube_(BBC_Micro)

That's the interface we use to connect to the Pi.

With the right software (PiTubeDirect) the Pi is able to then emulate any one of several second processors (6502, Z80, 6809, ARM2,...). The most highly tuned is the 6502, which effectively runs at 270MHz. i.e. A BBC Basic program will run over 100x faster than on the Beeb itself.

As well as emulating legacy processors, it's also possible to run code on the Pi directly. It provides a RISC OS like API, and recently people have started doing some quite cool things with this. For example, RobC wrote a ZX81 emulator and a Jupiter Ace emulator. These both run on the Pi, and use the host Beeb for all I/O (i.e. screen, keyboard, file system, etc.).
northernbob wrote: btw, with regard to cores....is there a master core made up? how much larger would that be?
The current core implements both a Model B and a Master 128. One of the push buttons allows you to switch between them at run time.
northernbob wrote: does the model b core inc any vram ? i believe tbblue has 128k of vram in the core.
surely the model b isnt vastly bigger than the z80 core, there must be some free fpga space to add, little extras?
It uses the fast external SRAM as video RAM.

Last time I looked we were using about 60% of the available space.

But most of that is actually a 6502 debugger, which is an embedded version of this:
https://github.com/hoglet67/AtomBusMon/wiki

This, and any many of the other options, can be enabled/disabled at compile time:
https://github.com/hoglet67/BeebFpga/bl ... xt.vhd#L56

Dave

User avatar
BigEd
Posts: 2998
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by BigEd » Tue Dec 12, 2017 7:37 am

As the FPGA in the Next is one size bigger than the one in the Matchbox, all the Matchbox cores should fit. So, in due course, there's a good chance any of them could be got to run.

However, actually making any core work is going to take some fiddling, with a real card. It seems even the Next team are having some adventures in adjusting their design from the older RAM chip to work with either the older or the newer one. And they've (at least temporarily) withdrawn their 28MHz effort.

Hopefully this is just the usual bringup. Possibly some shortcomings of the board design are being discovered.

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Tue Dec 12, 2017 8:22 am

With the right software (PiTubeDirect) the Pi is able to then emulate any one of several second processors (6502, Z80, 6809, ARM2,...). The most highly tuned is the 6502, which effectively runs at 270MHz. i.e. A BBC Basic program will run over 100x faster than on the Beeb itself.

As well as emulating legacy processors, it's also possible to run code on the Pi directly. It provides a RISC OS like API, and recently people have started doing some quite cool things with this. For example, RobC wrote a ZX81 emulator and a Jupiter Ace emulator. These both run on the Pi, and use the host Beeb for all I/O (i.e. screen, keyboard, file system, etc.).
nice summary!

I was missing a step in my thinking. you have to cut and paste, the existing work, to get the thing running asap.

Did not grasp you were emulating a second cpu, on the pi. I thought you were using the arithmetic processing power ofthe pi, directly. eg all the heavy maths was removed from cpu1 onto the pi, which is so muuch faster at the calculations. This is what the spec next community think the pi accelerator is doing...using the maths and gpu power of the pi, leaving the z80, to do, erm other stuff......`the host Beeb for all I/O (i.e. screen, keyboard, file system, etc.).`

I dont have the historical knowledgeofhow the beeb used a second processor. It mostly used it to run basic at a faster rate??

`it's also possible to run code on the Pi directly. It provides a RISC OS like API, and recently people have started doing some quite cool things with this. For example, RobC wrote a ZX81 emulator and a Jupiter Ace emulator`

How is this deiffernt from the first paragraph? can you give me examples of use, other than more emulators. or point me to a relevant thread )

what does cpu1 think the emulated cpu is? do you direct basic to use cpu1 or cpu2 to do the work....or dothey workin tandem,simulateously doing computations. this is controlled by software?....there a nice diagram of this, i need to pass this info on to the gui grp. Theres a lack of knowledge in the speccy community, and am gonna have to help fill in some gaps. We are mostly just a bunch of gamers :P

i need some background reading on copros as used by the beeb, obviously i dont fully understand how to exploit them. Got any suggested reading on this?

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Tue Dec 12, 2017 8:57 am

slight curve ball then for ya....

http://www.emulatronia.com/emusdaqui/sp ... na-eng.htm

can we run a 64bit zz80 on the pi?

infact can we have 3 or 4 of these running on a pi3. whats the limit to the number of virtual cpus, running on the pi ? the bandwidth of the gpio interface? its not the fastest of connections right?

this theory and christmas parties are hurting my brain LOL

time for porridge....

User avatar
BigEd
Posts: 2998
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by BigEd » Tue Dec 12, 2017 9:41 am

These questions and others could perhaps best be handled in a 'getting started with second processors' thread - which may or may not yet exist. Or a page on the BeebWiki. I'm just going out for the day, but might make a start this evening, if no-one beats me to it.

User avatar
BigEd
Posts: 2998
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by BigEd » Tue Dec 12, 2017 7:45 pm

OK, new thread here about the Tube and Second Processors. Please comment there on that.

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Wed Dec 13, 2017 8:10 am

there is a project that could make use of emulation on the pi, to a somewhat interesting effect....

https://raw.githubusercontent.com/rayda ... struct.png

imagine multiple z80s working on the pi. these coould be combines to make a display, far larger than the normal, spectrum sizes. which is of course useful for a proper gui. Hence my interest in this idea.

IF we could combine the 64bit z80 emulation with the zxpoly idea, then we are heading somewhere very interesting.

WOuld we need a layer of virtualisation on the pi to get multiple cpu emulated and running at once? esp if you try to assign ~100mb of memory to each emulated cpu ?!

ultimately this idea could beapplied to other cpu types in the future....3xarm2 combining etc

Clearly at indigo, we are interested in running an OS on the next, which is of some use in the modern era, this plan is a small step on the way to that. Prob some flaws in the plan, but its best we have at present.

would appreciate some positive feedback...

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Wed Dec 13, 2017 8:59 am

news update.....

Phoebus DokosGroup moderator The source code will be available in a few days. It’s currently undergoing final cleanup but as everyone can understand addressing the issues that arose with the 2A takes takes precedence.
As to if the core fits the UNO: it does not as the Uno uses a smaller capacity FPGA. However a cut-down version of the Next Core CAN fit on the UNO preserving a lot of the Next functionality. It’s up to the FPGA developers to adapt Victor’s code when it’s going to be released. I *have* access to the code so I can tell you without a shadow of a doubt that as Victor promised the code will be released.

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Sun Jan 07, 2018 2:25 pm

thing gone a little quiet since christmas. most folk had other things to do!

a lad in the indigo grp has posted this. my pizero is broke so i cant try it.

https://l.facebook.com/l.php?u=https%3A ... I83rjTwjDg

might have another go at meeting mark, got things to do in weston on weds....

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Sun Jan 07, 2018 2:26 pm

Initial release of Raspberry Pi Operating System. Looking to add a USB keyboard/Mouse to the Next along with a improved display output .ie take the 256*192 output and display it as 1024*768 using HQX to smooth out the graphics. this release is just to see who would be interested in this and is it worth while along these lines. If you have a Rpi/Rpi2/Rpi3 and you plug an ethernet cable into your boards there is a web status page too. All of this done with the power of Pascal. I am assume people know that they need the boot files on the sd card first and just replace the kernel(7).img file. Please comment if you need any help

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Sat Feb 24, 2018 4:08 pm

some folk beginning to puclish a few next games.

this is just a demo, but am sure we all know the game!


https://www.youtube.com/watch?v=El_Ub5F ... e=youtu.be
Last edited by 1024MAK on Fri Apr 06, 2018 2:17 pm, edited 1 time in total.
Reason: Embedded YouTube video added

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Sat Feb 24, 2018 4:59 pm

this game clearly has a ways to go, but it has some impressive elements...


https://youtu.be/hYehDXi7-V0

some great hints at the nexts abilities!
Last edited by 1024MAK on Fri Apr 06, 2018 2:19 pm, edited 1 time in total.
Reason: Embedded YouTube video added

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Sun Feb 25, 2018 11:56 am

anyone reading this ??

was talking to chris here about a remake of the space1999 game, which i think only exists for the oracle (weirdly)

Image

User avatar
BigEd
Posts: 2998
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by BigEd » Sun Feb 25, 2018 12:24 pm

You had me for a minute there: you mean the Oric! The important thing being that it's a 6502 based machine, of course. Well, important to me.

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Sun Feb 25, 2018 5:52 pm

BigEd wrote:You had me for a minute there: you mean the Oric! The important thing being that it's a 6502 based machine, of course. Well, important to me.

gonna pick holes in that statement, cos its sunday and am at a loose end...

Having followed alot of the pitube stuff, since i joined this board, I can see why its attractive to have the core as 6502. However its going to take a while to design a core as polished as the tbblue one is. OK ill admit its designed to make a spectrum games machine, its heavy on the pretty graphics side of things, but its got almost 24months of work in it. It seems a bit arrogant just to completely scrub it.
What about keeping the tbblue core and emulating the 6502 on the attached pi? or you looking to emulate an arm2 on there?

Guess i forgot that your a hard nosed beeb addict....am does a blonde speccy fan, easily impressed by nice gra[hics :P

User avatar
BigEd
Posts: 2998
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by BigEd » Sun Feb 25, 2018 6:22 pm

I've just got a big soft spot for the 6502, and some minor experience in coding at that level. In comparison, I have next to zero experience in coding for the Z80.

Some of what the Next offers, as I understand it, is a nice menu system for driving it. I suppose that runs on the Z80, although I'm not sure of that - has the source for the Next been released yet? Until it is, the best way to play with different cores will be to start from the ground up, treating it as an FPGA dev board. And there won't be a second slick menu system for quite some time, as it probably takes a fair bit of coding.

One of Dave's project is a debugging assist module for FPGA cores which uses a second simple core next to the 8 bit core, one which can run code written in C. That's a neat way to make the software easier to write.

I don't think it's arrogant to write an alternate core: the machine can easily be reflashed to run a new core or the original. It's not as dramatic as fitting a new engine in a car, more like putting a different CD in a player. So making a new core doesn't express any negative feeling about the one the Next ships with.

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Mon Feb 26, 2018 7:31 am

there is an update on things.

a teaser from the manual.

https://www.specnext.com/wp-content/upl ... demo-7.pdf

northernbob
Posts: 121
Joined: Fri Nov 24, 2017 6:49 am
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by northernbob » Sat Mar 03, 2018 12:46 pm

‎Allan Batteiger‎
to
Microware OS-9
22 February at 22:12 · Plano, TX, United States

Microware LP has been in existence for 5 years. Five years ago Freestation Inc., Microsys gmbh, and RTSI LLC signed an Purchase agreement for the IP to Microware OS-9. We have been very busy updating OS-9 for 68K/ARM/PPC/X86. We have released major updates for ALL of these CPU's over the years and continue to update OS-9. We are about to reintroduce a version of OS-9 for Hobbyist. Tentatively named Community Edition OS-9. This is a version of OS-9 that will run on the small ARM boards that have become so popular. We are also making major progress on a new compiler for OS-9 CLANG/LLVM is now generating code for PPC & ARM CPU's running OS-9. There is still a lot of testing and work to be done but progress is being made.

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

Re: Beeb FPGA port to Spectrum Next

Post by fordp » Tue Feb 25, 2020 11:14 pm

Hopefully, there is more useful information here: https://gitlab.com/victor.trucco.

I have my Next now but it will be a couple of months before I have the time to play with it :(
FordP (Simon Ellwood)
Time is an illusion. Lunchtime, doubly so!

Revaldinho
Posts: 10
Joined: Sun Aug 02, 2015 10:08 pm
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by Revaldinho » Sun Mar 08, 2020 3:30 pm

Great work by @Hoglet with help from @BigEd this week - test builds of BeebFPGA are up and running on the SpectrumNext now in both Model B and Master flavours.
R0000329 (1).jpg
BeebFPGA on Spectrum Next
NB you still need to use a PS/2 keyboard for the BeebFPGA core ... support for the built-in Next keyboard is a project for sometime in the future... :D

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

Re: Beeb FPGA port to Spectrum Next

Post by hoglet » Sun Mar 08, 2020 3:52 pm

Revaldinho wrote:
Sun Mar 08, 2020 3:30 pm
NB you still need to use a PS/2 keyboard for the BeebFPGA core ... support for the built-in Next keyboard is a project for sometime in the future... :D
I'm actually just working on that at the moment.

Then I'll put out a beta release with some installation notes.

That will probably happen tomorrow.

Dave

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

Re: Beeb FPGA port to Spectrum Next

Post by hoglet » Mon Mar 09, 2020 1:47 pm

Hi all,

The Spectrum Next Membrane Keyboard is now working nicely, so here's a first official Beta release of this Core:
https://github.com/hoglet67/BeebFpga/releases/latest

This is a Beta1 release of the Acorn Master and Acorn BBC Model B cores for the Spectrum Next.

The BeebFpga project now includes two cores for the Spectrum Next:
- a BBC Micro (Model B) core, using the cycle accurate T65 6502 implementation
- a BBC Master core, using Alan Daly's 65C02 implementation

These cores include a common set of features:
- High quality VGA output @ 50Hz
- Original sRGB SCART output @ 50Hz
- Membrane and PS/2 Keyboard support
- Beeb SID support
- Music 5000 support
- Internal 4MHz 65C02 Co Processor (for Tube Elite!)
- VideoNuLA (an extended colour palette, and additiona screen modes)
- MMFS SD Card File System

For more information, see the Wiki:
https://github.com/hoglet67/BeebFpga/wiki/Spectrum-Next

Dave

User avatar
BigEd
Posts: 2998
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by BigEd » Mon Mar 09, 2020 2:04 pm

Bravo! A great leap forward. And a massive potential increase in the installed base for BeebSID, VideoNuLA, and Music 5000.

User avatar
SimonSideburns
Posts: 537
Joined: Mon Aug 26, 2013 9:09 pm
Location: Purbrook, Hampshire
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by SimonSideburns » Mon Mar 09, 2020 10:20 pm

All I can say is WOW!

What a great example of how flexible the Next is.

I can't wait to receive mine (I ordered an Accelerated model). If it arrives before my birthday in early April I'll be a happy bunny.
Just remember kids, Beeb spelled backwards is Beeb!

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

Re: Beeb FPGA port to Spectrum Next

Post by fordp » Tue Mar 10, 2020 1:16 pm

BigEd wrote:
Mon Mar 09, 2020 2:04 pm
Bravo! A great leap forward. And a massive potential increase in the installed base for BeebSID, VideoNuLA, and Music 5000.
And tube Elite ;)
FordP (Simon Ellwood)
Time is an illusion. Lunchtime, doubly so!

User avatar
SimonSideburns
Posts: 537
Joined: Mon Aug 26, 2013 9:09 pm
Location: Purbrook, Hampshire
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by SimonSideburns » Tue Mar 10, 2020 4:04 pm

I wonder if you could use the nULA and the Pi Copro to emulate the Spectrum, on a Beeb core, on a Spectrum Next?

Wouldn't that be something :-)
Just remember kids, Beeb spelled backwards is Beeb!

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

Re: Beeb FPGA port to Spectrum Next

Post by hoglet » Tue Mar 10, 2020 6:27 pm

SimonSideburns wrote:
Tue Mar 10, 2020 4:04 pm
I wonder if you could use the nULA and the Pi Copro to emulate the Spectrum, on a Beeb core, on a Spectrum Next?
Yes, that would be possible, if you were sufficiently crazy!

jregel
Posts: 192
Joined: Fri Dec 20, 2013 6:39 pm
Location: Gloucestershire
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by jregel » Tue Mar 10, 2020 10:08 pm

Wow, very impressive!

I was planning on getting a Spectrum Next when they do the second Kickstarter, and having a Beeb mode gives me an extra reason to want one!

Theoretically, would the Next's expansion connector be usable in Beeb mode? Does it carry the signals to facilitate something similar to the Electron's expansion connector? This could open the door to all sorts of add-ons... User port, 1Mhz Bus, Cartridge ports...
BBC Master Turbo, Retroclinic External Datacentre, VideoNuLA, PiTubeDirect with Pi Zero, Gotek USB Floppy Emulator

User avatar
BigEd
Posts: 2998
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Beeb FPGA port to Spectrum Next

Post by BigEd » Wed Mar 11, 2020 9:09 am

Dave can surely elaborate, but my understanding is that most of the edge connector signals will be connected to the FPGA and free to do whatever we want. The fly in the ointment is that there are no level shifters - only protective resistors. So the voltage levels are not full 5V although probably fine for TTL levels. Some might worry that protective resistors are insufficiently protective. It would be - will be - possible to make an adapter dongle to do proper level conversion, and indeed to be physically compatible with Beeb usage. A Plus 1 for the Next. But as usual, that's something which will need to be designed, debugged, and made up, and there's the ever-present question of how to case it up nicely.

Edit: I should add, my guess would be that the edge connector won't come into play any time soon...

Post Reply

Return to “8-bit acorn hardware”