Mini racers & Tamiya Racing 6

Discussion in 'Unreleased Games Discussion' started by olivieryuyu, Mar 19, 2012.

  1. nesworld

    nesworld Gutsy Member

    Joined:
    Jan 1, 2008
    Messages:
    426
    Likes Received:
    4
    Tamiya and Mini Racers tested on real hardware (using 64drive) no problems detected other than the 64drive doesn't seem to detect the save type.
     
  2. stefan.iro

    stefan.iro Spirited Member

    Joined:
    Oct 23, 2005
    Messages:
    122
    Likes Received:
    4
    Mini Racers 64

    Many, many, many thanks to olivieryuyu for releasing Mini Racers !

    :encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement::encouragement:
     
  3. Zoinkity

    Zoinkity Site Supporter 2015

    Joined:
    Feb 18, 2012
    Messages:
    501
    Likes Received:
    108
    Mini Racers should be SRAM. Values and access are typical SRAM: 05,0C,0D,02, initialized the usual way. Perhaps you can force it?
     
  4. XiTaU

    XiTaU Active Member

    Joined:
    Mar 7, 2012
    Messages:
    37
    Likes Received:
    0
    tested both on everdrive works really nicely pj64 seems to have trouble emulating it yet but on hardware seems perfect.
     
  5. Zoinkity

    Zoinkity Site Supporter 2015

    Joined:
    Feb 18, 2012
    Messages:
    501
    Likes Received:
    108
    Incidentally, what would be the best graphics plugin/settings for this? Its specific microcode CRC isn't indexed yet.
     
  6. stranno

    stranno Enthusiastic Member

    Joined:
    Oct 10, 2011
    Messages:
    569
    Likes Received:
    11
    Rice Video and Nice64 (or 1964)

    http://code.google.com/p/emu-1964/downloads/detail?name=Rice Video R75.7z&can=2&q=

    Glide64 dont have the microcode defined (emulators doesnt even recognize the game ID), i'm not really sure if it can be defined but Rice plugin do the work perfectly (except the broken text)
     
    Last edited: Apr 10, 2012
  7. olivieryuyu

    olivieryuyu Robust Member

    Joined:
    Apr 9, 2005
    Messages:
    235
    Likes Received:
    5
  8. stranno

    stranno Enthusiastic Member

    Joined:
    Oct 10, 2011
    Messages:
    569
    Likes Received:
    11
  9. Zoinkity

    Zoinkity Site Supporter 2015

    Joined:
    Feb 18, 2012
    Messages:
    501
    Likes Received:
    108
    Thanks a lot!
    Ah, this should be the difference. Try adding this line to the microcode crc list:
    832fcb99=1

    Oh, incidentally in 2P head-to-head you can get it to load any map from 0-0x26. Need a little time to hardcode it so they cycle in proper order, but really neat. Need a bit of time to track down the DL error that causes track 0x22 to appear without a course.
     
    Last edited: Apr 10, 2012
  10. olivieryuyu

    olivieryuyu Robust Member

    Joined:
    Apr 9, 2005
    Messages:
    235
    Likes Received:
    5
    The issue is that the track are sometimes either loaded in the wrong order or for track 27 not loaded at all.

    Using the sram will allow you to get all data accessible at once

    I am pretty track 27 exists as it does load partially in 1964.

    Not sure how to explain better. Obviously something is wrong, but i don't think it is not fixable.

    Did you notice that press L/R on the load screen you get this screen:

    Glide64__69.png
     
    Last edited: Apr 11, 2012
  11. stranno

    stranno Enthusiastic Member

    Joined:
    Oct 10, 2011
    Messages:
    569
    Likes Received:
    11
    Perfect, thanks
     
  12. Zoinkity

    Zoinkity Site Supporter 2015

    Joined:
    Feb 18, 2012
    Messages:
    501
    Likes Received:
    108
    Yep. Track 27 loads course #0x22, which is a variation of Serene Garden. There's some DL error in there, and I'm still working out the exact course file layout. There's sets of pointers that point into the loaded file. One is for the track name image, another for the track layout image, and at least two that point at display lists. Just need to parse a few good stages to work out what's wrong in the bad one.

    Courses 0-0x26 are all races. 0x27-2F are specificly the minicourses for multiplayer tag and 4-player race (not head-to-head).
    Most tracks are reused to a certain degree. The IDs below are the hex codes for each course, not the track numbers:
    0 24 27 Tropical Paradise
    1 1B The Sewer
    2 22 29 Serene Garden
    3 21 28 Eighth Wonder
    4 1D Earth's Core
    5 12 2A R/C Jam
    6 Future City
    7 10 23 Space Station
    8 13 2B Off-Rodeo
    9 11 2C Toy Land
    A 15 2D Woodland Raceway
    B 1C Wild West
    C 18 Sand Dune D'Light
    D 26 Haunted Highway (triggers code at 8001F808)
    E 20 2E Polar Party
    F Heroes' Domain
    14 1E Suburbia / Backyard


    The track table the debugger displays is based on the table at 80082728, copied to 80303520. It's also used to set the order of tracks in both cups and multi head-to-head.

    [edit]
    Stage 27's name is Tranquility. Going through the DLs now to see what went bonkers. There's functions that select out parts of the stage file to display. One of these either was omitted or contained an error. Did figure out how they do the AI paths and camera path though. Anyway, will take a little bit to work out exactly what went wrong.

    [edit edit]
    Well this isn't good. The block from 80378680 - 8037A680 is bad.
    ROM 0x38A000 - 0x38C000 isn't present. It's filled with 0xFFs. The track won't display because the end of the vertex list and entire display list at that location fell in that range. Actually, there should be stuff after than that also got fried. Aegh...

    That track doesn't work on the original cart, right? Anyway, 0x2000 large could mean an unreadable sector on the cart or just a bad dump of the segment. Ziyal II dumps in 0x2000 segments, doesn't it?

    Anyway, it could be reconstructed with some effort. That said, it will need to be reconstructed and will not be the same as the original as a result.

    [edit edit edit]
    The crash is result of trying to process a block of FF's as though it was a display list. However, the subsequent chunk of geometry is also damaged.
    If you were looking at the file, this is what's going on.
    80377D78 34878 vertices DL1 start
    *80378680 35180 failure point
    ??? DL1
    80379318 35E18 DL1pointers
    80379330 35E30 vertex table 2 loadpoint 81FF
    80379530 36030 vertex table 2 loadpoint 81FF
    80379730 36230 vertex table 2 loadpoint 7DEF
    80379920 36420 vertex table 2loadpoint 81FF
    80379B20 36620 vertex table 2 loadpoint 7DEF
    80379D10 36810 vertex table 2 loadpoint 81FF
    80379F10 36A10 vertex table 2 loadpoint 79DF
    8037A0F0 36BF0 vertex table 2 loadpoint 81FF
    8037A2F0 36DF0 vertex table 2 loadpoint 81FF
    8037A4F0 36FF0 vertex table 2 loadpoint 81FF
    *8037A680 37180 extant vertices start here
    8037A6F0 371F0 vertex table loadpoint 2CAF
    8037A7A0 372A0 DL

    0x34878 would follow this format:
    06000000 80343570
    06000000 ????????
    B8000000 00000000

    So, we have part of the vertex list for the missing display list and the second list only draws about 10 triangles. The second list is easy to restore though. It's drawing the edge of the track, from the raceway to the grass. Thankfully the DL is formulaic, and the vertex positions are easy enough to figure out from the existing data. Really, the only trick will be working out ST for each since they sort of run in 'packets'.

    The missing DL has a larger number of extant vertices. I don't have the correct order yet, but the remaining ones draw a large, wooden shack at the top of the course just to the right of the large hill. There's another wooden structure right at the turn past the hill, which could be anything from a windmill to a water spout.

    As a temporary fix, you can use these GS codes to play the stage (note they change ASM so you might have to savestate/restore for it to take effect on emulators):
    810279B4 0000
    810279B6 0000

    -or do this to a ROM, in semi-IPS form:
    0285B4 0004 00000000

    Note that there will be some missing geometry. A permanent fix will be to restore the data.
     
    Last edited: Apr 13, 2012
  13. Rodrigo

    Rodrigo Spirited Member

    Joined:
    Mar 12, 2010
    Messages:
    186
    Likes Received:
    0
    Thanks a lot olivier!
     
  14. olivieryuyu

    olivieryuyu Robust Member

    Joined:
    Apr 9, 2005
    Messages:
    235
    Likes Received:
    5
    track 27 doesn't work on the real prototype. I intend to redump the cart few times again but i doubt it is a bad dump.
     
  15. Zoinkity

    Zoinkity Site Supporter 2015

    Joined:
    Feb 18, 2012
    Messages:
    501
    Likes Received:
    108
    Okay, if it doesn't work on the proto then it was Looking Glass's error.
    Well, I'll start piecing together the missing DLs now. Seems like most of the thing is still there. Finishing up the track median though is going to take a lot of time.

    In the meantime though the code and/or patch will make the stage playable.
     
  16. olivieryuyu

    olivieryuyu Robust Member

    Joined:
    Apr 9, 2005
    Messages:
    235
    Likes Received:
    5
    Cool!

    Any idea why the tracks sometimes are set in the wrong order. For instance you start a time attack for track 26 and you actually start with track 27???!!!

    I updated the Glide64 ini to get pause menu in game and graphics displayed in the building tracker.

    1517a281=1
    832fcb99=1

    []
    buff_clear = 0
    fb_smart = 1
    fb_hires = 1
    swapmode = 0

    http://jumbofiles.com/9u48zb5rmtwc

    You need then either to set read every frame (or get frame buffer notification under Mupen) to get all graphics displayed correctly!!!
     
  17. Zoinkity

    Zoinkity Site Supporter 2015

    Joined:
    Feb 18, 2012
    Messages:
    501
    Likes Received:
    108
    Haven't had much luck tracing that. The course is set within 8005CE60, the value at 80083CB0 is the cup (0: local, 1: regional, 2: world), but the actual stage number is a combination of the set # in SP+294 (onroad, offroad, mixed, and bonus) and the track within the set in SP+29C. Just not sure what's setting the two stack values yet.

    That's crazy anyway. The track number is grabbed from the table using (cup *0x18) + (set *6) + track -1, then subtracts 1 from that stage number.

    Have a good chunk of the removed hut rebuilt. Will take much, much longer to get the track median done though. Honestly, I'd rather have had the vertices than the display list.

    [edit]
    Wonder what version this one was? The one IGN playtested was a mostly-japanese localized version with some spiffed-up icons.

    I'm an idiot. This hut is almost an exact duplicate of the one in Serene Garden, and the 'windmill' is really just a tree ;*)
    They're identical between the stages, just a matter of their global offset being off. So, the part of the tree that's missing can be perfectly restored! Rejoice!
    As an interesting side-note, some of the stages are enviroment mapped whereas others use vertex color.

    If anyone has snapshots from a gameplay video for the stage (old ones, like the IGN video) it would be nice to use as reference.

    Also, in-game you hold LR to move the camera. Use the control stick and C-buttons (or + pad) to change the pitch, yaw, and rotation.

    L + c-left or +-left opens up a car stat modifier screen. You can use L/R to change the car you'r modifying. Also, L + c-right or +-right advances the course (or some combo like that). There's a whole bunch of these strewn throughout.

    Yes, yes. It's a double-post.

    http://www.mediafire.com/download.php?72low2p3q3hb83l
    This is a beta patch that restores what remains of the existing content. It also allows you to play an incomplete stage 27 without codes or other patches.
    This is only a beta and yes, I know the draw priority is screwed up and yes, I know that there's still stuff missing. This will be corrected later with a more complete patch. I mostly want to release this so that the stage doesn't crash when you load it.

    The hut, partial tree, and flowers are all defined by the vertices listed before the bad sector. One of the flowers at the base was only half-defined so I did take the liberty of adding two vertices. Otherwise, that's a best-guess as to what's in the file.

    If anyone can find images or video of this stage that would be a huge help. I'm really only guessing at what the end result should be.
     
    Last edited by a moderator: Apr 27, 2012
  18. olivieryuyu

    olivieryuyu Robust Member

    Joined:
    Apr 9, 2005
    Messages:
    235
    Likes Received:
    5
    Does it help a bit? Seems not far from it

    minijapan4.jpg
     
    Last edited: Apr 18, 2012
  19. Zoinkity

    Zoinkity Site Supporter 2015

    Joined:
    Feb 18, 2012
    Messages:
    501
    Likes Received:
    108
    Ah, that's track 7, Serene Garden. The problem with Tranquility (track 27) is that the few track medians left are very different from the MP and earlier track.

    [edit]
    Found more bad sectors.
    The first is 0x2000 bytes at 0x38A000, damaging two display lists in track 27.
    The second is 0x2000 bytes at 0x78A000, damaging part of the wavetables. That's probably unrecoverable without a different dump.
    The last one spans 0x2000 bytes at 0xB8A000 and affects the second and third car's normal color schemes. However, that can probably be reconstructed from one of the other color schemes for the same car. In a somewhat unusual move Looking Glass doesn't use palette swapping (or indexed images even when no color depth would be lost) so each car has a different image for each scheme.

    This game was dumped just in time. Any longer and this could have gotten seriously damaged.

    One thing I've been pondering is if any of the Looking Glass overdumps may contain data to the other discovered (or undiscovered) games. It could prove a somewhat circuitous method of recovering lost data.

    In case you never tried, you can change your car's color scheme on the car select screen by using the R button (or was it L? One of the shoulders...)

    [edit edit]
    Updated this patch:
    http://www.mediafire.com/download.php?72low2p3q3hb83l

    The three partial/missing car textures are all repaired. Basically color modded the greyscale samples in the table with color values from the remaining parts of each image. They blend in pretty well with the existing textures.
     
    Last edited: Apr 21, 2012
  20. alecjahn

    alecjahn Site Soldier

    Joined:
    Apr 23, 2008
    Messages:
    2,825
    Likes Received:
    9
    I'm bummed I went on an unintentional hiatus and missed this release. Great job!
     

Share This Page