English Amiga Board


Go Back   English Amiga Board > Main > Retrogaming General Discussion

 
 
Thread Tools
Old 11 March 2019, 12:16   #21
trixster
Guru Meditating
 
Join Date: Jun 2014
Location: England
Posts: 2,353
Quote:
Originally Posted by ReadOnlyCat View Post
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.

I have updated the video’s description for clarity
trixster is online now  
Old 25 March 2019, 04:14   #22
ReadOnlyCat
Code Kitten
 
Join Date: Aug 2015
Location: Montreal/Canadia
Age: 52
Posts: 1,178
Quote:
Originally Posted by roondar View Post
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
You should have created a "Z80 vs C6502" thread. (Probably already exists. )

This said, I have no opinion on that topic since I know nothing about the Z80 instruction set (other than it is part of the horrendous 808x family) but agree with you that reasonable comparisons can be achieved provided well defined standards of performance are agreed upon. And I will leave it at that.

Quote:
Originally Posted by roondar View Post
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
That seems llke a very reasonable request actually.
In the description of this early development video by the author of the port, he mentions that it runs at 12.5Hz so I guess we can use this as a minimum reference.

[ Show youtube player ]

Quote:
Originally Posted by roondar View Post
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?
I initially doubted they changed the general rendering algorithm much compared to the original C64 version, thinking that they probably just adapted the rendering routine to the particular display memory format of the BBC but the resolution is indeed higher on the Beeb so I now suspect that they might have changed more than that. Edit: I was wrong, it looks like the resolution is the same.

Also I actually wonder why the C64 version did not use a higher resolution mode as well since it does not use that many colors to begin with. Could it have been much faster in 320x200? I do not know enough about display memory organization on the C64 to answer.

As Trixster mentioned in his video description, they did document development somewhat there: https://stardot.org.uk/forums/viewto...p?f=53&t=16132

Quote:
Originally Posted by trixster View Post
I have updated the video’s description for clarity
Thanks! That is very kind of you.
ReadOnlyCat is offline  
Old 25 March 2019, 22:50   #23
rare_j
Zone Friend
 
rare_j's Avatar
 
Join Date: Apr 2005
Location: London
Posts: 1,178
Sorry to keep banging on about comparing this to the speccy, but I just don't understand how this is possible.
The BBC Master version of stunt car racer in this video is quite incredible. It's fast and it just looks right, it looks 16-bit quality on a 2Mhz 65SC12.
The spectrum version is like a slideshow, it's hard to tell if the physics are even right, on a 3.5Mhz Z80.

What is going on in the BBC Master the the Spectrum doesn't have to make this happen?
rare_j is offline  
Old 25 March 2019, 23:05   #24
DanScott
Lemon. / Core Design
 
DanScott's Avatar
 
Join Date: Mar 2016
Location: Tier 5
Posts: 1,213
Quote:
Originally Posted by rare_j View Post
What is going on in the BBC Master the the Spectrum doesn't have to make this happen?
about nearly 30 years of knowledge in optimisation i guess
DanScott is offline  
Old 26 March 2019, 04:11   #25
redblade
Zone Friend
 
redblade's Avatar
 
Join Date: Mar 2004
Location: Middle Earth
Age: 40
Posts: 2,127
Is that person also playing Alien Breed 3D II in the screen next to it?
Quote:
Originally Posted by trixster View Post
How about this for a pretty amazing port - Stunt Car Racer on the 8bit Acorn BBC Master

[ Show youtube player ]

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
redblade is offline  
Old 26 March 2019, 09:13   #26
jayminer
Registered User
 
jayminer's Avatar
 
Join Date: Jun 2015
Location: Umeå / Sweden
Posts: 266
Quote:
Originally Posted by redblade View Post
Is that person also playing Alien Breed 3D II in the screen next to it?
Sure looks like it
jayminer is offline  
Old 04 April 2019, 04:32   #27
ReadOnlyCat
Code Kitten
 
Join Date: Aug 2015
Location: Montreal/Canadia
Age: 52
Posts: 1,178
Quote:
Originally Posted by rare_j View Post
Sorry to keep banging on about comparing this to the speccy, but I just don't understand how this is possible.
The BBC Master version of stunt car racer in this video is quite incredible. It's fast and it just looks right, it looks 16-bit quality on a 2Mhz 65SC12.
The spectrum version is like a slideshow, it's hard to tell if the physics are even right, on a 3.5Mhz Z80.

What is going on in the BBC Master the the Spectrum doesn't have to make this happen?
The comparison with the C64 version may be more appropriate since the two machines use graphic modes with similar bandwidth (160x200, 16 colors) and the same CPU, although the BBC's is clocked twice as fast (2MHz vs 1MHz). CPU speed in that case seems enough to explain a large part of the improved frame rate.
As for why the Spectrum version is slower, well, it should not.
As some like Roondar have pointed out, the Speccy's Z80 should be somewhat faster than the BBC 6502, but the former's advantage should really be that its graphic mode requires a much smaller memory bandwidth to update than the BBC's. For Stunt Car Racer's purposes, the Sinclair graphic mode is essentially a monochrome bitmap which should be much simpler to update than the 4 bits per pixel of the BBC.

The answer is probably that whoever was tasked to write the port to the Speccy either was not very good/experienced or was not given enough time to do it correctly.
ReadOnlyCat is offline  
Old 04 April 2019, 11:51   #28
roondar
Registered User
 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,436
I know next to nothing about the ZX Spectrum, apart from three things:
  1. It's bitmap mode uses 6KB of memory plus 768 bytes for colour attributes
  2. It generally shows faster 3D performance than the C64
  3. It has several 3D flat shaded polygon stuff on it that is very impressive (from a performance point of view)

For comparison, the C64's bitmap mode (in both 160x200 and 320x200) uses 8KB + 1KB of attributes and the BBC micro uses 10KB for the basic 4-colour 160x200/2 colour 320x200 mode.

As a result of the above, I'm fairly certain the ZX Spectrum version of Stunt Car Racer could've been faster. Don't know why it isn't. Oh and the BBC Master version is still pretty epic

Last edited by roondar; 04 April 2019 at 11:59.
roondar is offline  
Old 04 April 2019, 13:11   #29
Dunny
Registered User
 
Dunny's Avatar
 
Join Date: Aug 2006
Location: Scunthorpe/United Kingdom
Posts: 2,076
The Spectrum has 16bit additions and Subtractions built into the chipset which helps enormously with 3D calculations, but the screen layout is absolutely horrible - it's divided vertically into three horizontal bands, each of which are divided into 8 groups of 8 pixel lines.

This is extremely fast for drawing text - you just add 256 to your pixel address to get the next pixel down so a simple INC H (where HL holds the address) will address the next line. Obviously things get more complex if you want to draw outside the character grid limitations. Each byte holds 8 pixels, so you have to rotate and shift a lot to draw lines for vectors.

I think the current speed winner for line drawing is about 7 cycles per pixel, and filled polygons are that plus cycles for the spans. A purely bitmapped display of 1BPP would take more memory but offer an insane speed advantage which sadly the Speccy didn't get.

So yes, the Speccy version of SCR should have been a LOT better - it could have easily outperformed the BBC and C64 versions had the coder actually thought about what they were doing, whereas Crammond not only knew his hardware, but also was very very good at algorithms.
Dunny is offline  
Old 05 April 2019, 00:48   #30
NorthWay
Registered User
 
Join Date: May 2013
Location: Grimstad / Norway
Posts: 852
a) You can set up a 256x192(or however many lines you want to use) screenmode on the C= 64 if you want by limiting your colours a little and shaping it with raster interrupts. (Basically using N character sets at the same time.)
b) The ZX does have a few limits; you can't double-buffer so you will typically have to draw to an off-screen buffer and then do a memcopy to transfer it to the screen. Screen memory is slower than the rest of the ram.
NorthWay is offline  
Old 05 April 2019, 11:32   #31
Dunny
Registered User
 
Dunny's Avatar
 
Join Date: Aug 2006
Location: Scunthorpe/United Kingdom
Posts: 2,076
The 128k Spectrum sorted that with the shadow screen memory bank, but as the 128k models were never that prevalent, nobody really used it much - but it did allow you to use double buffering with a simple OUT instruction - you could even do it from BASIC if you were careful.

The screen memory was slow though, due to the interaction between the ULA and the z80. This too had its uses as you could (on earlier 48k/128k models) use this to perform frame timing.

Interestingly, the russian models didn't have this ULA<>z80 contention and thus ran marginally faster.
Dunny is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Stunt Car Racer atchoo support.Games 3 19 November 2011 19:32
Stunt Car Racer Poor Student support.Games 4 25 September 2006 19:32
Stunt Car Racer TNT Zorro project.CARE 15 19 July 2005 11:50
Stunt car racer - the return! Bloodwych Nostalgia & memories 17 10 January 2005 20:36
Stunt Car Racer Darkseid support.Games 2 04 June 2002 22:27

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 08:48.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.09371 seconds with 13 queries