'V-Max secondary checks'
Author:Lord Crass (guest: search)
Date: Thu, Mar 31st, 2011 @ 01:31 ( . )

I was just thinking about the long tracks on some of the V-Max titles. It's not just that some tracks are long, some are short too. For example, here's the V-Max V1 version of Star Rank Boxing when converting from nib to G64:

Writing G64 file...
1.0: (3:7796) [] (7796) (fill:$55) {badgcr:7}
2.0: (3:7798) [] (7798) (fill:$55) {badgcr:5}
3.0: (3:7798) [] (7798) (fill:$55) {badgcr:4}
4.0: (3:7797) [] (7797) (fill:$55) {badgcr:3}
5.0: (3:7794) [] (7794) (fill:$55) {badgcr:4}
6.0: (3:7799) [] (7799) (fill:$55) {badgcr:1}
7.0: (3:7797) [] (7797) (fill:$55) {badgcr:3}
8.0: (3:7799) [] (7799) (fill:$55) {badgcr:5}
9.0: (3:7801) [] (7801) (fill:$55) {badgcr:2}
10.0: (3:7798) [] (7798) (fill:$55) {badgcr:5}
11.0: (3:7802) [] (7802) (fill:$55) {badgcr:8}
12.0: (3:7798) [] (7798) (fill:$55) {badgcr:6}
13.0: (3:7803) [] (7803) (fill:$55) {badgcr:2}
14.0: (3:7582) [] (7582) (fill:$55) {badgcr:35}
15.0: (3:7582) [] (7582) (fill:$55) {badgcr:38}
16.0: (3:8024) [trunc:96 ] (7928) (fill:$55) {badgcr:228}
17.0: (3:8023) [trunc:95 ] (7928) (fill:$55) {badgcr:230}
18.0: (2:7147) [] (7147) (fill:$55) {badgcr:9}
19.0: (2:7147) [] (7147) (fill:$55) {badgcr:6}

Notice that:
16/17 are the longest (and therefore the most dense?) tracks
12/13 are not as dense as 16/17, but are more dense than 14/15
18 is the least dense.

This comes into play if you look at the code that checks the header length table. The values are compared in the same manner above, in pairs, with track 18 being completely different.

Here's the V-Max V0 tracks from 1-20:

Writing G64 file...
1.0: (3:7790) [] (7790) (fill:$55) {badgcr:0}
2.0: (3:7791) [] (7791) (fill:$55) {badgcr:0}
3.0: (3:7780) [] (7780) (fill:$55) {badgcr:0}
4.0: (3:7571) [] (7571) (fill:$55) {badgcr:0}
5.0: (3:7787) [] (7787) (fill:$55) {badgcr:0}
6.0: (3:7782) [] (7782) (fill:$55) {badgcr:0}
7.0: (3:8039) [trunc:111 ] (7928) (fill:$55) {badgcr:0}
8.0: (3:7788) [] (7788) (fill:$55) {badgcr:0}
9.0: (3:7782) [] (7782) (fill:$55) {badgcr:0}
10.0: (3:7789) [] (7789) (fill:$55) {badgcr:0}
11.0: (3:7571) [] (7571) (fill:$55) {badgcr:0}
12.0: (3:7782) [] (7782) (fill:$55) {badgcr:0}
13.0: (3:7790) [] (7790) (fill:$55) {badgcr:0}
14.0: (3:7788) [] (7788) (fill:$55) {badgcr:0}
15.0: (3:8023) [trunc:95 ] (7928) (fill:$55) {badgcr:0}
16.0: (3:7785) [] (7785) (fill:$55) {badgcr:0}
17.0: (3:7790) [] (7790) (fill:$55) {badgcr:0}
18.0: (2:6939) [] (6939) (fill:$55) {badgcr:0}
19.0: (2:6941) [] (6941) (fill:$55) {badgcr:0}
20.0: (2:6946) [] (6946) (fill:$55) {badgcr:0}

Tracks 18/19 are the shortest, 4/11 being the second shortest, 7/15 the longest, everything else is in between 4/11 and 7/15. The C64 code that checks the header lengths compares these different length tracks against each other (track 19 against track 1, track 7 against track 4, 15 against 11, etc)

A track with more data on it would therefore have the bits packed closer together and result in a shorter cycle count within the header, no? Unfortunately, impossible to verify with the current emulators. You'd have to upload a modified subset of v-max drive code that does this check and saves the values for you to read. Or on a real C64 with an original Star Rank Boxing and a monitor cart, you could set a breakpoint at $5f97 and check the values at $010B-$0119 to get them for that title only.


REPLY: [With No Quote] --- [With Quoted Text]

Replies:
--* V-Max secondary checks
3/31/2011 @ 22:25--Lord Crass
4/01/2011 @ 00:32----hyper active
4/01/2011 @ 12:01------Lord Crass
4/01/2011 @ 17:08--------Nate
4/01/2011 @ 18:02----------hyper active
4/02/2011 @ 00:35------------Lord Crass
4/02/2011 @ 01:55--------------hyper active
4/02/2011 @ 02:40----------------Lord Crass
4/02/2011 @ 05:42------------------hyper active
4/02/2011 @ 07:06--------------------hyper active
4/02/2011 @ 12:06----------------------Lord Crass
4/03/2011 @ 02:00------------------------Lord Crass
4/03/2011 @ 03:05--------------------------hyper active

--- 0 Users Online --- 0 Recent Unique Posters

Q54=1716069770 - Threads: / 1716069770