ZX Spectrum next... Anybody backing ?

classic non-acorn hardware, software & languages
User avatar
JudgeBeeb
Posts: 1109
Joined: Thu Sep 10, 2015 9:56 pm
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by JudgeBeeb » Tue Jan 07, 2020 3:38 pm

There are benchmarks knocking around for pi-tube direct showing HIBASIC on a Beeb running more than 200 times faster than on a vanilla Model B. It’s all about giving the CoPro appropriate tasks (i.e. number crunching).
There is so much wonder in the universe; why should you want to imagine that there is more?

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Wed Jan 08, 2020 8:29 am

I think a tube-like interface would actually slow down the pi considerably while it waits for the z80 to respond since the volume of data from much faster processor goes up.
seems they think there is some sort of bottle neck, inherrent in the design?

might have to ask this on the tube thread......

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

Re: Pi-based Co-Pro on the cheap - 100MHz 6502 for £10? (now 274MHz)

Post by northernbob » Wed Jan 08, 2020 8:42 am

A dispute has arrisen in certain z80 quarters, which can be summarised....
I think a tube-like interface would actually slow down the pi considerably while it waits for the z80 to respond since the volume of data from much faster processor goes up.
I think the tube interface makes more sense when the relative processing power of the native 6502 and the co-processor are not too far apart. Then the co-processor is not being io starved and artificially slowed down.
Which interpreted means that they are trying move away from the tube model, as a link between the z80 and the pizero.

IS the above statement a good summary of events, or is there a misundertanding happening here?

thanks)

Shuttlebus Bob

User avatar
danielj
Posts: 8355
Joined: Thu Oct 02, 2008 5:51 pm
Location: Manchester
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by danielj » Wed Jan 08, 2020 10:22 am

It's more appropriate here.

As judgebeeb said, you move the data to the parasite, crunch it, then shunt any results back. The I/O processor just does I/O. It's not suited to rendering rasters that "chase the beam" or things that are shunting huge amounts of data to/from disk continually. There's always going to be a bottle neck there. You render the original machine as a simple I/O processor for the coprocessor. Almost like a dumb terminal. You can be a bit cleverer and run something more sophisticated on the I/O end (this is how Tube Elite manages things - it has a display application that runs on the I/O processor, and all the vector crunching goes on on the co-pro), but clearly there's always going to be a bottleneck when moving data across the tube from a slower processor to a faster one or vice versa. From the beeb's perspective, pulling data off a floppy disk is still slower than moving it across the tube so there's no bottle neck there. If you're using something solid state, clearly a fast processor could blat data on and off that more speedily than a 6502 or z80 can, so there'll be a bottleneck.

d.

User avatar
1024MAK
Posts: 10235
Joined: Mon Apr 18, 2011 5:46 pm
Location: Looking forward to summer in Somerset, UK...
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by 1024MAK » Wed Jan 08, 2020 11:40 am

Actually the Acorn Tube protocol is just one way of doing it. Elite shows another method. But there are many other possible variations.

I get the impression that there is a lack of understanding of what the Tube is.
At the hardware level, simply speaking, it is just an interface to an I/O port. In the case of the Beeb, it is memory mapped. In the case of the Acorn Tube, when using Acorn second or co-processors, the ULA (on the second processor PCB or equivalent circuitry/functionality in modern systems) provides a number of 8 bit registers, some of which are FIFO registers (so more than one byte can be queued). This is MUCH FASTER than a serial port.

A simpler system is to use a PIO chip’s back to back like Torch did with their Z80 second processor (the Beeb’s 6502 talks to a 6522 VIA, which has its external I/O pins connected (via resistors) to the external I/O pins of a 8255 PIO which in turn is connected to the Z80 (see here). Again, this is MUCH FASTER than a serial port.

In terms of one processor holding up another, that’s only down to poor programming. No different to a bad programmer trying to do far too much in an interrupt routine. Or using a polling loop and holding up a program instead of using an interrupt routine.

The Acorn Tube basically defines the second processor (which is generally considered to be the more powerful or faster processor) to be the master. It then issues instructions and data to the existing processor (“the I/O” processor)(in a BBC B this is the 6502). The I/O processor then gets on with it’s task. When done, it signals this via the Tube Interface. The second (master) processor can then check from time to time as it gets on with its own tasks, and when it sees that the I/O processor has completed its task, or has data, a data transfer can take place. Another simple example from Sinclair Research, is the Sinclair QL, it has two processors, one (a microcontroller) is tasked with sound generation, keyboard scanning and some serial port duties.

As I said earlier, there are plenty of other software systems that can be used. It very much depends on what you want to do. Like the example above, where the main program may be running on the existing processor (6502 for a BBC B, but Z80 for a Spectrum / Next) and that then uses the power and speed of the second processor for tasks that need a lot of number crunching, but where there is not huge amounts of data that need to be transferred.

Oh, and BBC BASIC has NO KNOWLEDGE whatsoever of any hardware at all. All I/O requests, transfers settings etc... all go via the OS (MOS). Apart from the ZX Spectrum having BASIC as THE “OS”, in principle, that’s no different to other languages running on a ZX Spectrum from using the “channels” in the ZX Spectrum to talk to the hardware...

The Z80 version of BBC BASIC runs on various machines including the Cambridge Computers Z88 (from a certain Sir Clive Sinclair) and on Amstrad’s NC100, NC150 and NC200 notebook computers.

Mark

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

Re: ZX Spectrum next... Anybody backing ?

Post by BigEd » Wed Jan 08, 2020 12:44 pm

Yes, there's certainly more than one way to do it.

Over here in the land of Acorn, we're very familiar with the second processor architecture, whereby the CPU closest to the user becomes an I/O processor, and the (bigger, faster) CPU furthest from the user becomes the application host.

In the case of PiTubeDirect, the Pi is acting as the application host, and in order to minimise the hardware needed to connect the Pi to the Beeb, the Pi also acts as the Tube chip, bit-banging the interface, and is not running an OS. And this is happening in the context of a machine which was from inception architected as being second processor capable.

In most other efforts to hook a Pi up to an 8 bit machine, I'd expect to see the Pi running Linux, and expect it to be able to offer its peripherals: storage, video, audio, network. It might also offer its computation as a service. It might even run an emulator wholesale and use the host only as a keyboard.

This is quite a different story.

One advantage of the Next is that the 8 bit machine is implemented on an FPGA. So it can have whatever interface and whatever glue logic makes sense: it could look like an SPI device, a Tube chip, a set of FIFOs, a shared memory, a VIA, or whatever.

But I think one of the things about the Next project, unsurprisingly, is that there's only a small group of people able to update the FPGA part of the design. There's another, presumably larger, group of people able to update the software running on the Pi. That combination offering will always be the main part of the market, and it will, I think, always be very Spectrum-centric. There's no particular reason to find knowledge or interest in Acorn's approach, and there is no existing approach for the Spectrum.

Once the Next is properly available and open-sourced, more options will be available - but they will probably be rather niche.

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Thu Jan 09, 2020 10:15 pm

dont mention the war.....Basil.

https://youtu.be/HpoMSMIIyRA

8)

User avatar
myelin
Posts: 951
Joined: Tue Apr 26, 2016 10:17 pm
Location: Mountain View, CA, USA
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by myelin » Sat Jan 11, 2020 1:19 am

BigEd wrote:
Wed Jan 08, 2020 12:44 pm
In the case of PiTubeDirect, the Pi is acting as the application host, and in order to minimise the hardware needed to connect the Pi to the Beeb, the Pi also acts as the Tube chip, bit-banging the interface, and is not running an OS. And this is happening in the context of a machine which was from inception architected as being second processor capable.

In most other efforts to hook a Pi up to an 8 bit machine, I'd expect to see the Pi running Linux, and expect it to be able to offer its peripherals: storage, video, audio, network. It might also offer its computation as a service. It might even run an emulator wholesale and use the host only as a keyboard.

This is quite a different story.
This is probably what the Next developers are getting at. Having the Pi bit-bang the interface is magical when you have it connected to a Tube port on a BBC, but it's not the most effective way to use a Pi attached to an FPGA when you have control over both sides of the interface.

SPI looks like a good choice in the Pi, given that it can apparently operate up to 125 MHz, which should perform quite a bit faster than the 2MHz Tube. It looks like there are two SPI controllers (with DMA!) available on all but the oldest Pi models.
SW/EE from New Zealand, now in Mountain View, CA, making BBC/Electron hardware projects for fun.
Most interesting: Arcflash, FX2+PiTubeDirect Tube/Cartridge adapter, USB cart interface.

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

Re: ZX Spectrum next... Anybody backing ?

Post by fordp » Sat Jan 11, 2020 8:02 am

myelin wrote:
Sat Jan 11, 2020 1:19 am
BigEd wrote:
Wed Jan 08, 2020 12:44 pm
In the case of PiTubeDirect, the Pi is acting as the application host, and in order to minimise the hardware needed to connect the Pi to the Beeb, the Pi also acts as the Tube chip, bit-banging the interface, and is not running an OS. And this is happening in the context of a machine which was from inception architected as being second processor capable.

In most other efforts to hook a Pi up to an 8 bit machine, I'd expect to see the Pi running Linux, and expect it to be able to offer its peripherals: storage, video, audio, network. It might also offer its computation as a service. It might even run an emulator wholesale and use the host only as a keyboard.

This is quite a different story.
This is probably what the Next developers are getting at. Having the Pi bit-bang the interface is magical when you have it connected to a Tube port on a BBC, but it's not the most effective way to use a Pi attached to an FPGA when you have control over both sides of the interface.

SPI looks like a good choice in the Pi, given that it can apparently operate up to 125 MHz, which should perform quite a bit faster than the 2MHz Tube. It looks like there are two SPI controllers (with DMA!) available on all but the oldest Pi models.
Ironically SPI was used for the first PI Copro experiments with myself and mainly Hoglet!
FordP (Simon Ellwood)
Time is an illusion. Lunchtime, doubly so!

User avatar
myelin
Posts: 951
Joined: Tue Apr 26, 2016 10:17 pm
Location: Mountain View, CA, USA
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by myelin » Sat Jan 11, 2020 4:27 pm

fordp wrote:
Sat Jan 11, 2020 8:02 am
Ironically SPI was used for the first PI Copro experiments with myself and mainly Hoglet!
The more things change...! :lol:
SW/EE from New Zealand, now in Mountain View, CA, making BBC/Electron hardware projects for fun.
Most interesting: Arcflash, FX2+PiTubeDirect Tube/Cartridge adapter, USB cart interface.

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

Re: ZX Spectrum next... Anybody backing ?

Post by BigEd » Sat Jan 11, 2020 5:42 pm

I rather like the gadget revaldinho built for the CPC, which is just a pair of FIFOs between the host and the Pi. The FIFOs not only provide a buffer, but also a full/empty status to help with flow control, keeping the chip count down.

For me, the natural protocol to put through that bi-directional channel would be packet based: a type byte, a length, a payload. With some room in the type byte for extensions. I felt that keeping the length down to 8 bits (256 bytes max payload) the packets would be short enough to allow interleaving of realtime packets or interrupt packets with, say, bulk transfers.

I'd be inclined to do something very similar on the Next: define a packet-based protocol using SPI for transport, with FIFOs on the FPGA side and perhaps DMA in use on the Pi side. Having said which, I've no idea how easy it would be to do that on the Pi. It's important, I think, to make sure there no realtime demands on the Pi which Linux couldn't handle. But it would be nice to arrange things so that MIDI or even packetised digital audio could be played with good fidelity.

SteveBagley
Posts: 259
Joined: Sun Mar 15, 2015 8:44 pm
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by SteveBagley » Sat Jan 11, 2020 7:55 pm

Presumably there's nothing stopping an Acorn Second Processor being attached to the ZX Spectrum anyway. Hardware wise, the TUBE is all implemented in the second processor by the ULA, the TUBE connector is just contains part of the address bus and the data bus exactly the same signals as provided on the Spectrum's edge connector (in fact, you could probably make an argument that the Spectrum has more support for second processors than the BBC Model A -- at least, you wouldn't need to solder the connectors in place :P).

You would only need a little glue logic to map the Z80's control bus to the signals (2MHzE basically) expected by the Tube ULA. It would then just be a matter of implementing the TUBE client on the Spectrum (as DNFS does on the Beeb) and probably the Acorn VDU.

Steve

User avatar
1024MAK
Posts: 10235
Joined: Mon Apr 18, 2011 5:46 pm
Location: Looking forward to summer in Somerset, UK...
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by 1024MAK » Sat Jan 11, 2020 8:20 pm

Yes!

In fact, as long as there is sufficient memory mapped or I/O address space, in theory, a Acorn second processor could be connected to many 8 bit systems...

Mark

User avatar
danielj
Posts: 8355
Joined: Thu Oct 02, 2008 5:51 pm
Location: Manchester
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by danielj » Sat Jan 11, 2020 10:32 pm

I have to say, playing devil's advocate, this does all beg the question.... "Why would you want to?" in the context of the next? :)

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

Re: ZX Spectrum next... Anybody backing ?

Post by BigEd » Sun Jan 12, 2020 11:41 am

Umm, why would you want to what? Buy a Next? Or attach a Pi? Or try to interface an original second processor with a Tube chip?

In my case, I bought into the Next because it seemed like a neat and tidy cased-up FPGA platform with many useful peripherals including a keyboard, RAM, and an expansion port. I don't expect to use it as a Spectrum much if at all. But then I might not use it as anything...

Why attach a Pi? To expand the machine! In so many possible ways, whether with the Pi as a slave running Linux or running as an application host perhaps with a bare-metal emulator.

Why interface a second processor with a Tube chip? Because it's possible! The Tube chip is nicely shaped as a peripheral for any 8 bit bus running at 2MHz or less. Just as it's interesting to cook up new second processors which didn't exist back in the day, it's interesting to add second processor capability to machines which didn't have it. (I do expect there's a lot of work to be done on the host side, which might never get done.)

(My reasons are all about technical curiosity, not about reaching a wide market.)

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Wed Jan 15, 2020 8:35 am

its ok, its passed the smell test.....

https://youtu.be/_w9dN6zv5-8

:D

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Tue Jan 21, 2020 9:08 am

i suspect this is out of date....

https://zx.xalior.com/NextPi/NextPi_0_99D.txt

still worth a read tho.

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Wed Jan 29, 2020 9:03 pm

for some reason I seem to have missed this demo....

https://www.facebook.com/warlord.manage ... 366152389/

doesnt seem to have made it to youtube am afraid.

the info feed from the next project is rather erratic at times.

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Tue Feb 04, 2020 2:02 am

release the cores....smithhers!
https://gitlab.com/SpectrumNext/ZX_Spec ... CR5FVQUHpY

some might find this of interest )

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

Re: ZX Spectrum next... Anybody backing ?

Post by BigEd » Tue Feb 04, 2020 9:11 am

northernbob wrote:
Tue Feb 04, 2020 2:02 am
release the cores....smithhers!
https://gitlab.com/SpectrumNext/ZX_Spectrum_Next_FPGA

some might find this of interest )
Ah, the open-sourcing has begun. Great! And GPL. Just the spectrum for now - I notice on their forums they did have plans to release a laundry list of alternate emulators (including a Beeb).
The multiple cores thing will be coming but it is not complete yet. As mentioned there is space for 32 cores in the fpga's flash and two slots are taken by the zx next itself. At the moment slot 3 can be used for development and can be started from basic after the next is booted.

User avatar
vectorlight
Posts: 192
Joined: Sun Apr 10, 2016 1:23 pm
Location: UK
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by vectorlight » Mon Feb 10, 2020 7:17 pm

Received mine today, great machine :D

Image
3D Printing and Acorn A3010 Owner!

RobC
Posts: 2970
Joined: Sat Sep 01, 2007 10:41 pm
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by RobC » Wed Feb 12, 2020 12:14 pm

It's a lovely looking thing.

The keys and case seem to have a matt finish but, on the previous images I've seen, they look glossy/shiny. Is it just a trick of the light or has the finish been altered?

Thanks,

Rob

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Sun Feb 16, 2020 3:00 am

whos gonna live dangerously and flip the core ? :evil: 8)

not sure when the pi enabled versions arrive.....3 weeks, could be more ?

User avatar
1024MAK
Posts: 10235
Joined: Mon Apr 18, 2011 5:46 pm
Location: Looking forward to summer in Somerset, UK...
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by 1024MAK » Sun Feb 16, 2020 3:21 pm

vectorlight wrote:
Mon Feb 10, 2020 7:17 pm
Received mine today, great machine :D
ZX Spectrum Next... Anybody backing ?

What!? :!: :?:

Me? :?:

Can’t say... But maybe, just maybe....

Mark

User avatar
1024MAK
Posts: 10235
Joined: Mon Apr 18, 2011 5:46 pm
Location: Looking forward to summer in Somerset, UK...
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by 1024MAK » Sun Feb 16, 2020 3:25 pm

RobC wrote:
Wed Feb 12, 2020 12:14 pm
The keys and case seem to have a matt finish but, on the previous images I've seen, they look glossy/shiny. Is it just a trick of the light or has the finish been altered?
Both!

The central part of each key is matt, but the rest of the remaining “square” section is glossy.

The top, bottom and the curved side are matt, but the left side, front and back are glossy.

Mark

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

Re: ZX Spectrum next... Anybody backing ?

Post by SimonSideburns » Mon Feb 17, 2020 11:30 pm

I'm a backer of an accelerated model too.

Only a few weeks more to wait hopefully.

I'm just hoping it arrives before my birthday in early April. What a great birthday present that would be.
Just remember kids, Beeb spelled backwards is Beeb!

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Tue Feb 25, 2020 2:41 pm

1024MAK wrote:
Sun Feb 16, 2020 3:21 pm
vectorlight wrote:
Mon Feb 10, 2020 7:17 pm
Received mine today, great machine :D
ZX Spectrum Next... Anybody backing ?

What!? :!: :?:

Me? :?:

Can’t say... But maybe, just maybe....

Mark
you sticking a pi zero in then? and any the other hardware?
did you notice the acorn core ?
https://gitlab.com/victor.trucco/zx-spe ... ster/Cores

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

Re: ZX Spectrum next... Anybody backing ?

Post by northernbob » Tue Feb 25, 2020 2:53 pm

Image

dont know fulll details as yet....

User avatar
1024MAK
Posts: 10235
Joined: Mon Apr 18, 2011 5:46 pm
Location: Looking forward to summer in Somerset, UK...
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by 1024MAK » Tue Feb 25, 2020 3:36 pm

Err, thanks, now you have added to my indecision :lol:

I was actually trying to get some Pi Zeros for a number of projects, but yes in the event that I can actually find time, the plan is to stick a Pi Zero in it...

Mark

stephen_usher
Posts: 134
Joined: Sun Apr 10, 2016 2:47 pm
Location: Oxford, UK.
Contact:

Re: ZX Spectrum next... Anybody backing ?

Post by stephen_usher » Tue Feb 25, 2020 7:27 pm

1024MAK wrote:
Tue Feb 25, 2020 3:36 pm
Err, thanks, now you have added to my indecision :lol:

I was actually trying to get some Pi Zeros for a number of projects, but yes in the event that I can actually find time, the plan is to stick a Pi Zero in it...

Mark
www.melopero.com have them in stock: https://www.melopero.com/en/shop/raspbe ... -wireless/

Post Reply

Return to “other vintage hardware, software and languages”