English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   Retrogaming General Discussion (https://eab.abime.net/forumdisplay.php?f=17)
-   -   Stunt Car Racer now on the BBC Master (https://eab.abime.net/showthread.php?t=96627)

trixster 09 March 2019 22:12

Stunt Car Racer now on the BBC Master
 
How about this for a pretty amazing port - Stunt Car Racer on the 8bit Acorn BBC Master

https://youtu.be/0S_L6OKQjIg

It has fewer colours than the 16bit versions, wire-frame graphics and a closer draw distance, but look how fast it is! Compare that to the C64 version.

The development thread is here: https://stardot.org.uk/forums/viewto...p?f=53&t=16132

Superman 09 March 2019 23:16

That’s brilliant! :great

Dunny 10 March 2019 01:04

That's not wireframe graphics... It's solid filled 3D. Even more impressive.

NorthWay 10 March 2019 02:03

Quote:

Originally Posted by trixster (Post 1309958)
Stunt Car Racer on the 8bit Acorn BBC Master

A late 8-bit machine with 128K ram and 2MHz 6502, but impressive nonetheless.
Kinda more impressed by the A8 port (still needs 128K though) https://www.youtube.com/watch?time_c...&v=88s-mbc0Wwk
(and for C= 128 owners there ought to be a 2MHz borders hack for 35% speedup?)

rare_j 10 March 2019 03:32

Both these are very nice, the BBC Master one is especially smooth. How come they are both so much better than the spectrum version? I thought the z80 in the spectrum was supposed to be faster.

ReadOnlyCat 10 March 2019 05:26

Quote:

Originally Posted by rare_j (Post 1309978)
Both these are very nice, the BBC Master one is especially smooth. How come they are both so much better than the spectrum version? I thought the z80 in the spectrum was supposed to be faster.

Quote:

Originally Posted by NorthWay (Post 1309974)
A late 8-bit machine with 128K ram and 2MHz 6502, but impressive nonetheless.

Quote:

Originally Posted by Dunny (Post 1309968)
That's not wireframe graphics... It's solid filled 3D. Even more impressive.

Quote:

Originally Posted by trixster (Post 1309958)
It has fewer colours than the 16bit versions, wire-frame graphics and a closer draw distance, but look how fast it is! Compare that to the C64 version.

Well, it is fast for a reason: this is a boosted BBC Master. ;)

Cf the description of that YouTube video:
Quote:

This Master has an internal 65C102 4mhz coprocessor making it a Master Turbo

trixster 10 March 2019 07:55

The coprocessor is not running in the video, it’s using the stock 2mhz 65C102

Dunny 10 March 2019 10:45

The 3.5 MHz z80 in the Spectrum is roughly equivalent to a 1Mhz 6502 - barring certain operations that the z80 performs slightly better at; the Speccy did 3D a lot faster than the C64 for that reason. (The reverse is also true, before anyone gets upset - the C64 was far better at 2D than the Speccy).

That this is an accelerated 65 series CPU means that it's going to outperform anything of that era quite handily - the BBC machines were always a lot faster at pretty much everything to start with.

If someone could record the Spectrum Next at 7MHz playing SC then you'd likely see a similar framerate.

Leffmann 10 March 2019 10:57

Didn't the Z80 have more machine registers than the 6502's single accumulator and two index registers, and the ability to do some 16-bit operations as well? With that, and running at 3.5 MHz I would've expected it to be much faster than the 1 MHz 6502.

nobody 10 March 2019 11:06

The 6502 at 4 MHz is 3/4 times faster than Z80 at the same speed.

6502/4mhz has 1.8 MIPS
Z80/3,5 MHz has 0.45 mips

hitchhikr 10 March 2019 11:29

I recall that the main problem of the Z80 was that it was very slow at decoding it's instructions.

trixster 10 March 2019 12:30

This is not running on the 4mhz accelerator, it is running on the stock 2mhz cpu

rare_j 10 March 2019 13:50

Thanks for answering guys.
Another question.
If the c64 port is so bad, why are they basing their ports on disassembled c64 sources rather than, say, disassembled spectrum or atari st sources?
Sorry if this is obvious stuff, just curious.

roondar 10 March 2019 13:55

The C64 port isn't bad at all, given that the C64 always struggled at 3D stuff. This struggle has everything to do with the very slow CPU in the C64 (<1MHz) and the weird bitmap setup that makes plotting pixels/lines needlessly complicated.

However, even with those advantages for the BBC master... Doesn't change this is impressive :)

Edit: I love the 6502 and have never been a Z80 fan, but the comments on its relative speed compared to the Z80 are clearly false. The 6502 @1Mhz is not the same speed as a 3.5MHz Z80, it's a lot slower than that. It is true the 6502 is faster than the Z80 clock for clock. But the difference is much closer to being somewhere between 1.5 and 2x, not 3-4x.

hitchhikr 10 March 2019 14:08

Quote:

If the c64 port is so bad, why are they basing their ports on disassembled c64 sources rather than, say, disassembled spectrum or atari st sources?
Probably because the mnemonics are similar so it's easier to port ?

Dunny 10 March 2019 17:17

Quote:

Originally Posted by roondar (Post 1310054)
Edit: I love the 6502 and have never been a Z80 fan, but the comments on its relative speed compared to the Z80 are clearly false. The 6502 @1Mhz is not the same speed as a 3.5MHz Z80, it's a lot slower than that. It is true the 6502 is faster than the Z80 clock for clock. But the difference is much closer to being somewhere between 1.5 and 2x, not 3-4x.

It depends on what you're doing. For 16bit maths and 3D stuff, the Speccy tended to walk all over the C64 (compare and contrast Carrier Command, for example, at least graphically) whereas the C64 excelled at banging memory around - all ops on the z80 take at least 4 cycles to complete; the 6502 has a large swathe of ops that complete in 1 cycle.

But of course, you can't do a whole game using only the strongest ops of the CPU, so in practice yes the z80 was 1.5x faster. Let's also not forget that the C64 had a huge advantage in support hardware - although the Speccy's ULA could be coaxed into doing some pretty neat tricks, it never had any hardware sprites at all.

Superman 10 March 2019 18:18

Runs nicely on BeebEm :great

lesta_smsc 10 March 2019 19:24

Excellent port! I'm surprised by how fast it actually runs on that machine! Does the multiplayer function work?!

ReadOnlyCat 10 March 2019 20:07

Quote:

Originally Posted by trixster (Post 1310038)
This is not running on the 4mhz accelerator, it is running on the stock 2mhz cpu

Thanks for the precision trixster!
This is not clear from the video description so it is good to get this clarified, and thus, well, my bad for assuming this was the reason it was so smooth. ;)

Quote:

Originally Posted by roondar (Post 1310054)
Edit: I love the 6502 and have never been a Z80 fan, but the comments on its relative speed compared to the Z80 are clearly false. The 6502 @1Mhz is not the same speed as a 3.5MHz Z80, it's a lot slower than that. It is true the 6502 is faster than the Z80 clock for clock. But the difference is much closer to being somewhere between 1.5 and 2x, not 3-4x.

Quote:

Originally Posted by nobody (Post 1310015)
The 6502 at 4 MHz is 3/4 times faster than Z80 at the same speed.

6502/4mhz has 1.8 MIPS
Z80/3,5 MHz has 0.45 mips

These comparisons are always quite tricky because it is difficult to setup benchmarks which properly account for all differences between machines:
  • The MIPS score is notoriously dependent on the CPU's architecture and can give very different scores to CPUs which in practice perform very closely.
  • The video memory organization of both machines are very different which means that a polygon drawing routine on one needs to be completely rewritten for another.
  • Even programmer quality matters, an experienced 6502 coder will smoke out a mid range Z80 one even in areas where the 6502 is disadvantaged and the reverse is equally true.
  • One cannot even use C written benchmarks to compare the CPUs since the quality of the code generation is another factor which hampers the measure.
  • and you can probably find more reasons.

;)

roondar 11 March 2019 11:14

This is the last post I'll make on Z80 vs 6502. I do find it an interesting discussion, but this post is about the awesome Stunt Car Racer for the BBC Master - not Z80 vs 6502 :cool

Quote:

Originally Posted by ReadOnlyCat (Post 1310136)
These comparisons are always quite tricky because it is difficult to setup benchmarks which properly account for all differences between machines:
  • The MIPS score is notoriously dependent on the CPU's architecture and can give very different scores to CPUs which in practice perform very closely.
  • The video memory organization of both machines are very different which means that a polygon drawing routine on one needs to be completely rewritten for another.
  • Even programmer quality matters, an experienced 6502 coder will smoke out a mid range Z80 one even in areas where the 6502 is disadvantaged and the reverse is equally true.
  • One cannot even use C written benchmarks to compare the CPUs since the quality of the code generation is another factor which hampers the measure.
  • and you can probably find more reasons.
;)

While all of the above is very true, you can still make a 'rough estimate' of relative CPU speed, all things being equal. Which is what I was trying to get at with my point - generally a 3.5MHz Z80 is going to be about 1.5x-2x the speed of a 1MHz 6502 and real world results do tend to bear this out.

Quote:

Originally Posted by Dunny (Post 1310102)
all ops on the z80 take at least 4 cycles to complete; the 6502 has a large swathe of ops that complete in 1 cycle.

The 6502 has no ops at all that complete in one cycle. The minimum instruction length is 2 cycles (https://www.masswerk.at/6502/6502_instruction_set.html) ;)

---
Back on topic: I've not tried measuring it, but it may be interesting to see how much faster this actually runs than the C64 version. It seems a lot faster, but it's difficult to see if it's 2x, 3x, 4x (or more).

I guess what I'm after is an FPS counter :laughing

Would also be interesting to know how much more (or less) complex the renderer is than the one in say Elite (which runs very well on the BBC Micro range).

One thing that also makes me wonder: IIRC the C64 version uses ever so slightly more colour than this version, which may or may not be part of the speed difference. Is that a reasonable idea, or does 'monochrome' vs 'monochrome with a dash of coloured lines' not really matter?


All times are GMT +2. The time now is 00:32.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.

Page generated in 0.04914 seconds with 11 queries