New ST project - Pole Position arcade conversion

All about ST/STE games

Moderators: simonsunnyboy, Mug UK, Doctor Bob Gordon, ICS, Moderator Team

User avatar
nativ
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 4106
Joined: Mon Jul 30, 2007 10:26 am
Location: South West, UK

Re: New ST project - Pole Position arcade conversion

Postby nativ » Tue Feb 11, 2014 7:48 pm

I know it might be 'cheating' on the original a little, but how would vector bill boards and signs work? I am thinking of Vroom for example, as I think it used this technique.
Atari STFM 512 / STe 4MB / Mega ST+DSP / Falcon 4MB 16Mhz 68882 - DVD/CDRW/ZIP/DAT - FDI / Jaguar / Lynx 1&2 / 7800 / 2600 / XE 130+SD Card // Sega Dreamcast / Mega2+CD2 // Apple G4

http://soundcloud.com/nativ ~ http://soundcloud.com/nativ-1 ~ http://soundcloud.com/knot_music
http://soundcloud.com/push-sounds ~ http://soundcloud.com/push-records

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Tue Feb 11, 2014 9:22 pm

Thanks dml and Eero for your technical feedback - it's been a real inspiration and given me plenty of thoughts to chew on. Having spent this evening getting reacquainted with the 68000 scaling code, I've made the decision to go with an approach that is closest to dml's #1 approach, but with a view to avoiding the MULs. What I like about this approach is that I'll hopefully get a speed boost without having to compromise on the authenticity or accuracy of the graphics - something that I'm sure you'll know by now that I'm quite passionate about :D

I'll report back in the next couple of days on progress...

User avatar
Marakatti
Atari God
Atari God
Posts: 1359
Joined: Sat Jun 18, 2005 9:58 am
Location: Finland
Contact:

Re: New ST project - Pole Position arcade conversion

Postby Marakatti » Wed Feb 12, 2014 5:42 pm

Great project! Keep up the good work [smilie=greencolorz4_pdt_01.gif]
-------------< Member of Atarimania >-----------
-< ST / STe / Falcon030 / TT030 archiver >-
-------------> www.atarimania.com <-------------

User avatar
bullis1
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2301
Joined: Tue Dec 12, 2006 2:32 pm
Location: Canada
Contact:

Re: New ST project - Pole Position arcade conversion

Postby bullis1 » Thu Feb 13, 2014 1:40 am

This is a very interesting project to me chicane & I'm thrilled that you're attempting realtime sprite zooming. Best of luck. I'll be watching closely :D
Member of the Atari Legend team

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Wed Feb 26, 2014 12:35 pm

Just a quick update on ST Pole Position - I've now managed to implement the span-based sprite scaling algorithm. It's taken a bit longer than I expected, but it's now 99% done (barring a few glitches) in moderately optimized 68k asm. It "feels" somewhat faster than the previous iteration of the scaling algorithm, although I've rather foolishly not implemented any way of measuring the improvement in frame rate (which is something I hope to do very soon). The downside of all this is just over 100k in lookup tables! Part of the reason for this massive memory usage is that each span is stored as a word value as some spans are up to 400 pixels long) - but I hope to be able to reduce this memory usage to around 60k by applying some (reasonably obvious) improvements to the way it works. There's no doubt I'll need the memory elsewhere - I'm learning that 512k doesn't go very far!

Other things I've been working on since the last update:

1) The internal game clock is now synchronised with the VBL, so the game engine runs at the same speed regardless of how hard the graphics engine is having to work. This means that ST Pole Position currently runs at 50 game ticks per second rather than the 60 that the arcade game runs at - although this isn't such a bad thing given the reduced frame rate of the ST version when compared to the arcade version.
2) I've started implementing the status panel (score, laptime and seconds remaining) at the top of the screen.

There's a screenshot of current progress on my Twitter feed at https://twitter.com/RetroRacing. Once I'm a bit further on with the implementation of the status display (it's all in unoptimized C at the moment and having a very unpleasant impact on frame rate), I'll post another video.

User avatar
Eero Tamminen
Atari God
Atari God
Posts: 1950
Joined: Sun Jul 31, 2011 1:11 pm

Re: New ST project - Pole Position arcade conversion

Postby Eero Tamminen » Wed Feb 26, 2014 8:55 pm

Hatari has fairly accurate 68000 ST emulation, and a debugger with a profiler. You can automate it to calculate your frame rate, find slowest frames and give you profile where most time is spent. That is already used in profiling BadMood (Doom for standard Falcon).

Zamuel_a
Atari God
Atari God
Posts: 1234
Joined: Wed Dec 19, 2007 8:36 pm
Location: Sweden

Re: New ST project - Pole Position arcade conversion

Postby Zamuel_a » Wed Feb 26, 2014 9:55 pm

Are you still using the C2P routine in anything? I don't think C2P is needed at all in this kind of game and would only slow it down a lot. (for a real horizontal zoom routine I guess you need it, but for your new approach there is no use).
ST / STFM / STE / Mega STE / Falcon / TT030 / Portfolio / 2600 / 7800 / Jaguar / 600xl / 130xe

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Wed Feb 26, 2014 11:03 pm

Eero Tamminen wrote:Hatari has fairly accurate 68000 ST emulation, and a debugger with a profiler. You can automate it to calculate your frame rate, find slowest frames and give you profile where most time is spent. That is already used in profiling BadMood (Doom for standard Falcon).


Thanks! I'll be sure to look that up - I didn't realise the Hatari debugger was so fully featured.

Zamuel_a wrote:Are you still using the C2P routine in anything? I don't think C2P is needed at all in this kind of game and would only slow it down a lot. (for a real horizontal zoom routine I guess you need it, but for your new approach there is no use).


Yep - the cars, billboards and the starting line I've just added are all drawn using the C2P scaler. If I wanted to, I could go down the well-trodden path that virtually all commercial ST racing games used to - prescaling sprites at different sizes, view aspects and horizontal shifts, and blitting the data directly to the screen without any kind of conversion. But I don't want to do this - most of the aforementioned games (including the good ones like Lotus) are afflicted by the same visual issues of sprites jumping between horizontal draw positions and scaling factors, which to be frank looks a bit crap.

In order to remain reasonably faithful to the visuals of the arcade game, I like the idea of having 40+ scaling factors, 26 view aspects, four paint jobs for each car, along with the freedom to display each sprite at single pixel horizontal offsets. Aside from the cars, I also have 10 billboards and a start line gantry (neither or which use the new approach because they don't contain transparent pixels), all of which can be displayed at 40+ scaling factors.

With all this in mind, I'm really not sure how I can avoid C2P without reverting to the tried and tested ST racing game graphical techniques that I despise so much. What do you think? :D

Zamuel_a
Atari God
Atari God
Posts: 1234
Joined: Wed Dec 19, 2007 8:36 pm
Location: Sweden

Re: New ST project - Pole Position arcade conversion

Postby Zamuel_a » Wed Feb 26, 2014 11:16 pm

I have never done anything similar to this, so I might not get all of it, but if you prescale horizontally all billboards and stuff, why would you need a C2P routine? It would work the same if you do it the normal way since it's more or less just normal data you copy to the screen. You would of course need a mask for the start and end 16 pixel block (like with a polygon drawer), but other than that it's just a normal copy routine for pixel precise zooming. But I might miss something....
ST / STFM / STE / Mega STE / Falcon / TT030 / Portfolio / 2600 / 7800 / Jaguar / 600xl / 130xe

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Wed Feb 26, 2014 11:48 pm

Zamuel_a wrote:I have never done anything similar to this, so I might not get all of it, but if you prescale horizontally all billboards and stuff, why would you need a C2P routine? It would work the same if you do it the normal way since it's more or less just normal data you copy to the screen. You would of course need a mask for the start and end 16 pixel block (like with a polygon drawer), but other than that it's just a normal copy routine for pixel precise zooming. But I might miss something....


Zamuel_a wrote:I have never done anything similar to this, so I might not get all of it, but if you prescale horizontally all billboards and stuff, why would you need a C2P routine? It would work the same if you do it the normal way since it's more or less just normal data you copy to the screen. You would of course need a mask for the start and end 16 pixel block (like with a polygon drawer), but other than that it's just a normal copy routine for pixel precise zooming. But I might miss something....


The problem I have is that given the wide variation of sprite assets I need in order to retain everything from the arcade original, a 520ST just wouldn't give me enough memory to provide enough prescaled versions of each sprite in order for the effect to be convincing. As a rough guess, I reckon I might get 4-5 prescaled versions of each sprite, and I'd only be able to display them at 16 pixel horizontal increments. This would result in a faster frame rate, but it would probably look a bit crap. Of course, if I was to up the target hardware spec to a 4 meg ST, chances are I'd be able to store every sprite asset in every desired size and horizontal increment, and blit these to the screen as you've described. In this scenario, I'd get the best of both worlds - a great frame rate and graphics faithful to the arcade original.

But I'm stubborn and I want this to work on a 520ST. :D

Zamuel_a
Atari God
Atari God
Posts: 1234
Joined: Wed Dec 19, 2007 8:36 pm
Location: Sweden

Re: New ST project - Pole Position arcade conversion

Postby Zamuel_a » Thu Feb 27, 2014 9:29 am

I don't understand why you want it to run on a 0.5Mb machine. Ok it's good for compatibility but a 1Mb machine should be a better choice. I think you should start with a 4Mb STE machine and see what is the best performance you can get and when do slower versions for other machines.
If you want it to be as close as possible to the arcade, when you also needs to make it run at the same frame rate :wink:
ST / STFM / STE / Mega STE / Falcon / TT030 / Portfolio / 2600 / 7800 / Jaguar / 600xl / 130xe

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Thu Feb 27, 2014 9:50 am

Zamuel_a wrote:I don't understand why you want it to run on a 0.5Mb machine. Ok it's good for compatibility but a 1Mb machine should be a better choice. I think you should start with a 4Mb STE machine and see what is the best performance you can get and when do slower versions for other machines.
If you want it to be as close as possible to the arcade, when you also needs to make it run at the same frame rate :wink:


I can understand why you're asking this question, especially there are few constraints on the amount of memory available to users of either emulators or the real hardware. I suppose it's a personal thing - I'm keen to understand whether or not ST racing games developed for stock hardware back in 80's could have been "better" or "more accurate" given better development tools and the removal of commercial constraints. I appreciate that "better" and "more accurate" are quite subjective concepts, but in my case it means accurately capturing the look and feel of the arcade game, even if this means compromising on frame rate.

If I was to focus on a 4 meg version first, I don't really feel like I'd be answering the above question. There's no doubt in my mind that Out Run (for example) could have been much better given a 4 meg ST, but the reality is that a very tiny proportion of ST users had access to 4 meg machines back in 1988. I've read somewhere (possibly on this forum) that the guy who wrote ST Shadow of the Beast initially had a 1 meg version running that was much more faithful to the Amiga original, but he had to throw most of this work away due to the fact that very few ST users of the time would have been able to enjoy it.

Having said all this, if I'm not too fed up with ST Pole Position after finishing the 520ST version, I'll be very interested to see how much closer I can get to the arcade original on a 4 Meg ST :D

Zamuel_a
Atari God
Atari God
Posts: 1234
Joined: Wed Dec 19, 2007 8:36 pm
Location: Sweden

Re: New ST project - Pole Position arcade conversion

Postby Zamuel_a » Thu Feb 27, 2014 10:14 am

Yes if you can make it work on a 0.5Mb machine, then it's good, but if you get a low framerate it will be more or less useless anyway, even if it looks good.
ST / STFM / STE / Mega STE / Falcon / TT030 / Portfolio / 2600 / 7800 / Jaguar / 600xl / 130xe

Shredder11
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2434
Joined: Mon Nov 26, 2007 2:23 pm
Location: West Yorkshire, United Kingdom (England)
Contact:

Re: New ST project - Pole Position arcade conversion

Postby Shredder11 » Thu Feb 27, 2014 10:52 am

I understand the coder's personal reasons but I too would love to see a 4MB STE version! I feel a little awkward asking for this when I am not contributing to the work involved, however I am sure there are many who would love to play it and show their appreciation. :cheers:

User avatar
troed
Atari God
Atari God
Posts: 1438
Joined: Mon Apr 30, 2012 6:20 pm
Location: Sweden

Re: New ST project - Pole Position arcade conversion

Postby troed » Thu Feb 27, 2014 12:11 pm

chicane wrote:I can understand why you're asking this question, especially there are few constraints on the amount of memory available to users of either emulators or the real hardware. I suppose it's a personal thing - I'm keen to understand whether or not ST racing games developed for stock hardware back in 80's could have been "better" or "more accurate" given better development tools and the removal of commercial constraints.


The only thing that matters when doing things for a retro system today is the personal satisfaction :) I think you're doing the right thing setting up yourself with such a challenge.

/Troed

User avatar
purpleeagle01
Captain Atari
Captain Atari
Posts: 306
Joined: Mon Jul 19, 2004 9:42 am
Location: Wien

Re: New ST project - Pole Position arcade conversion

Postby purpleeagle01 » Sat Mar 15, 2014 9:30 am

A very cool idea and with the Vrrooommm Sound on STe ??
Cheers
The Most Good things beginning with the letter A
Like Atari Austria Wien(My Favorite Soccer Team)

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Wed Mar 19, 2014 10:23 am

purpleeagle01 wrote:A very cool idea and with the Vrrooommm Sound on STe ??
Cheers


Unfortunately sound is my weak point - I know and understand very little about it. :(
I'm more of a graphics and algorithms guy so ST Pole Position will probably end up looking nice, playing accurate to the arcade game, but sounding more like a hoover than a car. :D

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Fri Mar 21, 2014 11:43 pm

I've just posted a new video on YouTube showing the latest progress on ST Pole Position:

https://www.youtube.com/watch?v=_8_UpVO ... e=youtu.be

Feedback welcome!

User avatar
FedePede04
Atari God
Atari God
Posts: 1211
Joined: Fri Feb 04, 2011 12:14 am
Location: Denmark
Contact:

Re: New ST project - Pole Position arcade conversion

Postby FedePede04 » Sat Mar 22, 2014 9:22 am

it's look good,
but a couple of things that i noticed.

don't know if it is the video rendering, but the car graphic, f..k up sometime, and also the background mountains is jumping.
Again i don't know if the arcade game is doing the same thing.

but i looking forward to try it, so keep up the good work :)
Atari will rule the world, long after man has disappeared

sometime my English is a little weird, Google translate is my best friend :)

Dal
Administrator
Administrator
Posts: 4178
Joined: Tue Jan 18, 2011 12:31 am
Location: Cheltenham, UK
Contact:

Re: New ST project - Pole Position arcade conversion

Postby Dal » Sat Mar 22, 2014 9:40 am

That's looking really nice and good speed too.

Just a minor thing, and I'm sure it's already on your to-do list, it would be nice to have something in the HUD to show what gear is engaged. Just the word HI or LO will do. Maybe stick it in the bottom right corner of the screen?
Mega"SST" 12, MegaSTE, STE: Desktopper case, IDE interface, UltraSatan (8GB + 512Mb) + HXC floppy emulator. Plus some STE's/STFM's

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Sat Mar 22, 2014 12:58 pm

FedePede04 wrote:don't know if it is the video rendering, but the car graphic, f..k up sometime, and also the background mountains is jumping.


Sorry I should really have mentioned this - the version shown in the video contains several half-finished optimisations designed to keep the frame rate up - I'm having to work the poor ST pretty hard to get these kind of visuals :) I'll obviously be looking to iron these out before any kind of public release.

Dal wrote:Just a minor thing, and I'm sure it's already on your to-do list, it would be nice to have something in the HUD to show what gear is engaged. Just the word HI or LO will do. Maybe stick it in the bottom right corner of the screen?\


Good call - I'll be sure to include this in my todo list :)

User avatar
Eero Tamminen
Atari God
Atari God
Posts: 1950
Joined: Sun Jul 31, 2011 1:11 pm

Re: New ST project - Pole Position arcade conversion

Postby Eero Tamminen » Sat Mar 22, 2014 3:27 pm

FedePede04 wrote:don't know if it is the video rendering, but the car graphic, f..k up sometime, and also the background mountains is jumping.


You mean the mountains stuttering left and right sometimes? I was also wondering whether the text highlight worked correctly because when the text color switches to red, text background is also changed in the video, but doesn't happen with the other colors which the text color cycles through.

To get better feel for the car speed it would be nice if the green fields would also have some effect that gives impression of the speed the car is moving at, e.g with palette change.

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Sun Mar 23, 2014 4:59 pm

Eero Tamminen wrote:You mean the mountains stuttering left and right sometimes? I was also wondering whether the text highlight worked correctly because when the text color switches to red, text background is also changed in the video, but doesn't happen with the other colors which the text color cycles through.


The text highlight is indeed broken at the moment. As with the arcade game, there's not supposed to be any text background. This (as with all of the other graphical bugs) will be fixed in due course.

Eero Tamminen wrote:To get better feel for the car speed it would be nice if the green fields would also have some effect that gives impression of the speed the car is moving at, e.g with palette change.


I know what you mean - the feeling of speed isn't quite there at the moment. My current strategy is to improve this by firstly getting an engine sound in place, and secondly improving the frame rate by hopefully 3-4 fps (hopefully to around 13-15 fps). The visuals of ST Pole Position are very closely modelled on the arcade machine, which gives a really nice illusion of speed at 30fps. If the illusion of speed is still lacking once these measures have been put in place, I might well look at a few supplemental measures as you describe.

User avatar
MasterOfGizmo
Atari God
Atari God
Posts: 1261
Joined: Fri Feb 08, 2013 12:15 pm
Contact:

Re: New ST project - Pole Position arcade conversion

Postby MasterOfGizmo » Tue Apr 01, 2014 8:04 pm

A midi based multiplayer mode is something that would imho be great...

Gesendet von meinem Nexus 7 mit Tapatalk
MIST board, FPGA based Atari STE and more: https://github.com/mist-devel/mist-board/wiki

chicane
Atari freak
Atari freak
Posts: 73
Joined: Mon Jul 02, 2012 11:25 am
Location: Leeds, UK

Re: New ST project - Pole Position arcade conversion

Postby chicane » Sat Apr 26, 2014 10:11 pm

I've just uploaded a new YouTube video showing the latest progress on this conversion at http://youtu.be/q7CkJvXRi-0

The text from the YouTube video is quoted below to give an idea of what to expect:

Here's another work in progress video for Atari ST Pole Position, showing progress made in the last month. The video firstly shows the demo mode, after which a player-controlled qualifying session and race is completed.

New features/improvements shown in this video include:

- Starting lights
- Puddles in track during race session
- 'Game Over' caption during demo mode
- Better frame rate
- Checkered road markings at start line
- Less glitchy opponent car rendering
- Less glitchy background scrolling
- Correct colours on title screen
- Exploding cars
- Correct flashing of colours during post qualifying/race report

There are still lots of incomplete features and glitches, but I hope to iron many of these out before the next update.


Feeback welcome as always.


Social Media

     

Return to “Games - General”

Who is online

Users browsing this forum: No registered users and 2 guests