Jump to content
IGNORED

Pole Position - Atari (Fixed Checkered Flags)


MrFish

Recommended Posts

Re speech - I'll see about digging out my stuff and put it up.

The essential part in getting the speech working is a reworked DLI/kernal since it takes up a significant part of the screen - the entire road area plus a little extra.

The technique I was using is Pokey Timer in the main screen area when needed then the DLI just unconditionally fetches and stores the samples.

To prevent unwanted audio when no voice is occurring, just use self-modifying code that directs the store to an unused Pokey location.

 

The other requirement was triggering - I was using a somewhat kludge-o-matic method that triggered the voice stuff when the blimp was in a certain spot. No doubt there's a better way to do it.

 

The whole thing was crash prone because it was before Altirra (hard to debug) and the IRQ masking NMI problem was virtually unknown (and the reason it used to crash).

  • Like 3
Link to comment
Share on other sites

I forgot, Pole Position X+ has a clean checkered flags sequence and uses the Atari blimp.

This version is good when you get tired of playing the same track all the time. I like the track

selection screen too (except I wish it was selectable by joystick in addition to using the

console keys).

 

So, I tacked a title screen on it as well.

 

Pole Position X+(Atari, Title).xex

Edited by MrFish
  • Like 5
Link to comment
Share on other sites

 

Thanks for posting; but, this ends up being the same as the version I have. It's the PAL version that's of interest,

as I'll add the title screen in PAL colors to that, eh?

 

Ah yes, but I thought you wanted to see my version. It has been a long time since I fixed this, and I have to dig deep in my memory to get into it again.

 

*BUGS*

From what I understand there are a few bugs:

 

1. Sometimes the time-left timer is going wrong. I have not been able to reproduce this bug (because I do not have enough time to play Pole Position all the time now), but I remember it was actually there. If the messages in the other threads are right, it has something to do when you have 99 seconds left or so at the end of a track and there is extra time added for the next round or so? Not verified, but I'm positive that there was a bug with the timer.

 

2. Speed. I'm still not sure whether it is a feature (slip stream speed up) or a bug. Speed is usually limited to a certain x mph. But in rare occasions suddenly the speed is higher.

 

Perhaps these 'bugs' can be fixed too?

Link to comment
Share on other sites

Ah yes, but I thought you wanted to see my version. It has been a long time since I fixed this, and I have to dig deep in my memory to get into it again.

 

*BUGS*

From what I understand there are a few bugs:

 

1. Sometimes the time-left timer is going wrong. I have not been able to reproduce this bug (because I do not have enough time to play Pole Position all the time now), but I remember it was actually there. If the messages in the other threads are right, it has something to do when you have 99 seconds left or so at the end of a track and there is extra time added for the next round or so? Not verified, but I'm positive that there was a bug with the timer.

 

2. Speed. I'm still not sure whether it is a feature (slip stream speed up) or a bug. Speed is usually limited to a certain x mph. But in rare occasions suddenly the speed is higher.

 

Perhaps these 'bugs' can be fixed too?

 

OK, so there are a couple bugs. That must be why you took down the binary from your thread about it.

 

I'm not sure about the slipstream bug you're talking about. I know the speed can get higher when you will

keep from any skidding for a certain amount of time. Maybe this is what you're speaking of? If that's what

you're talking about, I don't think it's a bug at all, but part of the game design.

 

I guess the 99 second bug would be more of an issue only for the longer races (more laps). I typically just

do short races, so it'd hardly bother me at all. I play on NTSC anyway, so I'm just interested in it for others.

I guess it seems like it would be a useful copy of the game for many of those using PAL. I'd at least like to

check it out. If you don't want to post it here, you can send it in a PM if you want. Personally, I don't see

the problem posting it here, though, since anyone reading the thread will know what's going on with it.

Link to comment
Share on other sites

Re speech - I'll see about digging out my stuff and put it up.

The essential part in getting the speech working is a reworked DLI/kernal since it takes up a significant part of the screen - the entire road area plus a little extra.

The technique I was using is Pokey Timer in the main screen area when needed then the DLI just unconditionally fetches and stores the samples.

To prevent unwanted audio when no voice is occurring, just use self-modifying code that directs the store to an unused Pokey location.

 

The other requirement was triggering - I was using a somewhat kludge-o-matic method that triggered the voice stuff when the blimp was in a certain spot. No doubt there's a better way to do it.

 

The whole thing was crash prone because it was before Altirra (hard to debug) and the IRQ masking NMI problem was virtually unknown (and the reason it used to crash).

 

 

Could an AtariVox be used for the speech in order to lessen the amount of CPU overhead as opposed to using samples? Has anyone used an AtariVox on A8 before?

 

 

I find it kinda funny the things people want fixed with this version as opposed to the Atari 7800 version of Pole Position II. For that one, it's all about improving the details in the car's graphics and adding the actual billboard graphics from the arcade version to it [or close approximations].

Link to comment
Share on other sites

The CPU overhead of speech isn't really a problem since it's only occurring at the start and end of qualifying when everything else is fairly static.

IMO there's not a lot of point doing a mod if it's not working on everyone's hardware. As it is the requirement would be 48K Ram which most people have.

I'd also considered a VBXE enhanced version but even there it's a lot of effort for only a few hundred users with the real hardware.

  • Like 2
Link to comment
Share on other sites

 

Thanks. I think the sprites are already pretty well done for quad-width; but have it if you think you can do something for them.

What really needs worked on is the explosion. I know it's quad-width too; but it looks like a bunch of random pixels rather than

a formed explosion, like Namco created.

 

For the last days I try to figure out how the explosion works.. but I have failed :(

It starts at 3AE7 and continues till 3C61 for a whooping 16 frames ! The arcade version have 5 !

Surely there is some overlapping going on but the animation is so fast that I cant comprehend what I am seeing.

If someone can explain how the layers and colors works, I'm sure we can come up with something good :)

post-65-0-29565800-1541356906_thumb.jpg

Edited by TIX
Link to comment
Share on other sites

For the last days I try to figure out how the explosion works.. but I have failed :(

It starts at 3AE7 and continues till 3C61 for a whooping 16 frames ! The arcade version have 5 !

Surely there is some overlapping going on but the animation is so fast that I cant comprehend what I am seeing.

If someone can explain how the layers and colors works, I'm sure we can come up with something good :)

 

I just had a quick look at it. You're right, it's a 16 step animation phase.

It looks like they're using 3rd coloring or'ing on two players; but there

are only 16 sections of sprite data. So, they're using different

combinations of the 16 sections of sprite data to create the 16 steps.

Also, they're changing the colors used at various stages of the animation.

I had a look at the first 4 frames and it wasn't too hard to figure out

which sections of sprite data were paired together to create them.

 

There should be some tables that determine what sprite data is used for

each frame and a table for color combinations (or at least color changes;

I don't think both colors change on every frame). I don't know if they'll be

separate tables or some kind of combined table; maybe the former. If you

can locate those tables, then you can set them up to control the animation

in a way that would allow for a sequence that replicates something closer

to the arcade.

 

One thing I didn't check (since I only went through the animation sequence

once) is that the colors and sprite pair combos may have a partially random

element to them. If that's the case, things might become a little more

complicated.

Edited by MrFish
  • Like 1
Link to comment
Share on other sites

I captured the 16 animation frames.

 

Luckily, this seems to be the same sequence, and colors, I looked at the first time around.

So, no randomness going on here.

 

As you can see, some frames repeat (although the color combinations change at times).

1, 3, 5, & 7 are all the same sprite data (1st and 2nd blocks of data in the file, IIRC).

2 & 4... 6 & 8... etc.

 

Frame 01 post-6369-0-33960800-1541362898.png Frame 02 post-6369-0-11550000-1541362903.png

 

Frame 03 post-6369-0-11918000-1541362908.png Frame 04 post-6369-0-95289600-1541362912.png

 

Frame 05 post-6369-0-36196900-1541362918.png Frame 06 post-6369-0-65973900-1541362922.png

 

Frame 07 post-6369-0-60618300-1541362926.png Frame 08 post-6369-0-41162200-1541362935.png

 

Frame 09 post-6369-0-14043800-1541362940.png Frame 10 post-6369-0-84708400-1541362944.png

 

Frame 11 post-6369-0-16236200-1541362953.png Frame 12 post-6369-0-11048200-1541362960.png

 

Frame 13 post-6369-0-71296700-1541362966.png Frame 14 post-6369-0-07221100-1541362973.png

 

Frame 15 post-6369-0-44990500-1541362982.png Frame 16 post-6369-0-10064000-1541362988.png

Edited by MrFish
  • Like 2
Link to comment
Share on other sites

Thanks man, great explanation !

I had the frames numbered (literally) but I still could not make head from toe.. :) (see below)

 

So I can count 8 unique sprites:

 

1-3-5-7 --> 1

2-4-6-8 --> 2

9-11-14 --> 3

10 --> 4

12 --> 5

13 --> 6

15 --> 7

16 --> 8

 

somehow we have to match the 5 arcade frames to those 8 if we want to reproduce the arcade sequence..

I'll start squeezing the first 2 arcade frames into 1 and 2 position and we will see how it goes..

post-65-0-84739400-1541367616_thumb.jpg

post-65-0-57981800-1541367725_thumb.jpg

Edited by TIX
Link to comment
Share on other sites

like a real car fire ending in explosion the first two smaller ones flicker back and forth.. so

12134345

21243454

 

that might be nice as far as implementing the arcade

as far as filling in the 5 for 8... I'd think you could choose to do 3 more ----

--- original1as1 new2as2 original2as3 original 3as4 new4as5 original4as6 new5as7 original5as8

maybe a car part would be in some frame. if made new frames out to 8...

1212343456567878

Edited by _The Doctor__
Link to comment
Share on other sites

The explosion from arcade PolPos 2 is good, the flying tyre over the top but adds to the cheesiness.

 

I'd not looked into the Atari one, my impression was that it was just ORing a couple of RANDOM reads together than ANDing with some mask data (that's the way I'd have done it anyhow).

 

The problem is that since it's 4x stretched PMs, it's hard to include any meaningful detail.

  • Like 1
Link to comment
Share on other sites

Thanks man, great explanation !

I had the frames numbered (literally) but I still could not make head from toe.. :) (see below)

 

So I can count 8 unique sprites:

 

1-3-5-7 --> 1

2-4-6-8 --> 2

9-11-14 --> 3

10 --> 4

12 --> 5

13 --> 6

15 --> 7

16 --> 8

 

somehow we have to match the 5 arcade frames to those 8 if we want to reproduce the arcade sequence..

I'll start squeezing the first 2 arcade frames into 1 and 2 position and we will see how it goes..

 

Yes, 8 unique sprites (I hadn't examined closely enough yet to see that frames 2 & 4, and frames 6 & 8 were the same sprites, but using different color sets).

 

So, to be clear:

 

Sprite #1 @ Frames 1, 3, 5, & 7 is made up of the 1st & 2nd chunks of player data, starting at 3AE7 & 3AFF respectively.

 

Sprite #2 @ Frames 2, 4, 6, & 8 is made up of the 3rd & 4th chunks of player data, starting at 3B17 & 2B2E respectively.

 

And I'm assuming the rest of the sprites follow the same pattern (5th & 6th chunks, 7th & 8th chunks, etc.).

 

So every two chunks of player data makes up one sprite, with the overlap between the data making up the 3rd color for

each sprite.

Edited by MrFish
  • Like 3
Link to comment
Share on other sites

Added a second startup screen, which comes up after the logo.

 

Unfortunately, Graph2Font screens aren't triggered by button-up (after a button-down),

they're triggered immediately by a button-down. So, I made each screen triggered by a

different key. First one by trigger, second one by the START key. A little inconvenient,

but I was more interested to see how it how looks together at the moment (Maybe the

author of "Integrator" could do something to fix using multiple startup screens?). Well,

the START key has to be used to begin a game anyway. So, it's not like you wouldn't

have to use it.

 

It's actually not an issue on real hardware -- since you've got a sufficient delay before

the next screen gets loaded in; but in emulation it can happen too fast.

 

The text could be done in hi-res, which I'll probably do later (using P/M's for portions of

the track). For now, it looks good enough.

 

post-6369-0-66250000-1541469194_thumb.png

 

[Edit: Hold on; made a mistake in the file. Will repost in a few minutes.]

 

OK, here's the proper version (first version I posted actually had the logo title come up

before and after the Fuji track screen).

 

Pole Position (Atari, Title, Fuji).xex

Edited by MrFish
  • Like 6
Link to comment
Share on other sites

It starts at 3AE7 and continues till 3C61 for a whooping 16 frames ! The arcade version have 5 !

 

The arcade version only has 5 sprites, but they use scaling on several of the sprites.

So the full animation essentially ends up using 8 sprites. The 1st sprite gets scaled twice,

and the 4th sprite gets scaled once.

 

So, the Atari version has the right amount of sprites, it's just they use that weird animation

sequence, and double up on the amount of frames. But, if you just used each of the 8 sprites

for 2 frames a piece, everything would work out fine.

 

post-6369-0-15116900-1541533702.gif

Edited by MrFish
  • Like 1
Link to comment
Share on other sites

I wonder if anything like Super IRG or 480i tricks can be doing to enhance the graphics of the clouds and mountains.

 

With the road and car section of the screen. If there enough time to do color changes with the cars on each pixel line? Would make some interesting hacks.

Link to comment
Share on other sites

The arcade version only has 5 sprites, but they use scaling on several of the sprites.

So the full animation essentially ends up using 8 sprites.

 

I did some more checking, and there's more scaling going on than the above GIF shows.

I counted at least 8 different scaling frames, for a total of 13 frames. There may be more.

But, the main point is that all 8 sprites on the Atari could be used, rather than just 5.

Edited by MrFish
  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...