Jump to content

pepinos

Members+
  • Posts

    29
  • Joined

  • Last visited

Posts posted by pepinos

  1. i have a question

     

    in the mame plus links, is there any link there or a file, that i can see all the games for mame plus?

    Use MAWS for that, as it lists all the games in MAME. MAME Plus! doesn't have any games that "normal" MAME wouldn't have.

     

    i asked it because in binarry files or source files i didnt saw any txt file which may included mame plus games

     

    thanks anyway

  2. Sprites..

     

    This is the first shot of some sprites with meaningful tiles. Everything is in the wrong place and upside down at the moment, but you can see where this is heading.

     

    upside_down_sprites.png

     

     

    Tile Compression Part 2

     

    Dox made a suggestion, I implemented it, and now the tile DMA is fixed.

     

    Basically the RLE byte should affect the last normal byte before it, NOT the byte after it. This simplifies the code, and produces much better results.

     

     

    sfiii_new_bg_1.png

     

    sfiii_new_bg_2.png

     

    sfiii_new_bg_3.png

     

     

    sfiii_new_bg_4.png

     

     

    sfiii_new_bg_5.png

     

     

    sfiii_new_bg_6.png

     

     

    sfiii2_new_bg_1.png

     

     

    sfiii2_new_bg_2.png

     

     

    jojo_new_bg_2.png

     

    http://haze.mameworld.info/

  3. June 18th, 2007

     

    CPS3 Tile / Sprite Data Compression

     

    CPS3 uses compressed data for it’s BG tiles and Sprite Data. The system has a ‘DMA’ list in Video RAM, and when given the command the video hardware will process this list, and copy + decompress graphic data from the FlashROMs into Video RAM for use by the game.

     

    The compression initially looked rather complex, but actually turns out to be much more simple than first thought (although emulation still isn’t perfect)

     

    The basics of it are simple. The first command in the DMA list is a special command, telling the chip to upload a 256 byte table to its internal memory. The Compressed data contains 8 bit values from 00 - FF. Byte with 0×80 set (0×80 - 0xFF) are treated as a lookup into the table it uploaded, replacing one byte, with one word from the table. This allows them to compress the 128 most common words to a single byte instead of a word, thus saving 50%.

     

    After that there is an RLE stage, bytes with 0×40 set are command bytes, telling the chip to repeat the next byte a certain number of tiles. What you’re left with is a series of values between 0×00 and 0×3f, giving 6bpp (64 colour) sprite / bg tiles.

     

    What isn’t quite understood is what happens if there is an RLE command byte followed by an RLE command byte, or if RLE is applied to a 0×80 byte, does it just affect the first value in the table, or do both get repeated etc.

     

    Here are some screenshots, they’re not quite as good as ElSemi’s, probably due to a bug in the code I’m using right now. Also I’ve had to disable the text layer palette for now because MAME can’t handle over 0×10000 colours in a palette without custom drawing functions.

     

    JoJo

     

    jojo_bg_1.png

     

    jojo_bg_2.png

     

    jojo_bg_3.png

     

    jojo_bg_4.png

     

    jojo_bg_5.png

     

    JoJo Bizzare Adventure

     

    jojoba_1.png

     

    jojoba_2.png

     

    jojoba_3.png

     

    jojoba_4.png

     

    jojoba_5.png

     

    jojoba_6.png

     

    SF III

     

    sfiii_bg_1.png

     

    sfiii_bg_2.png

     

    sfiii_bg_3.png

     

    sfiii_bg_4.png

     

    sfiii_bg_5.png

     

    SF III 2

     

    sfiii2_bg_1.png

     

    sfiii2_bg_2.png

     

    sfiii2_bg_3.png

     

    sfiii2_bg_4.png

     

    sfiii2_bg_5.png

     

    SF III 3

     

    sfiii3_bg_1.png

     

    sfiii3_bg_2.png

     

    sfiii3_bg_3.png

     

    sfiii3_bg_4.png

     

    sfiii3_bg_5.png

     

    http://haze.mameworld.info/2007/06/18/cps3...ta-compression/

  4. yeah plus some people just have to have everything (and im the same way with some things, not MAME because i pretty much gave up after mame.dk died....which was a really long time ago...man i miss mame)

    MAME.dk was king back in its hayday, but nowadays several sites have taken its place.

     

    However, whoever tore MAME.dk down deserves a good spanking.

     

    good old days back then....to download 15mb...with a 56k connection :P

  5. the two towers are indeed folling down :punk::punk::devilboy::thumbsup1:

     

    June 16th, 2007

     

    CPS3 Colours

     

    The Palette DMA is now emulated, so the text layer is looking a lot nicer now.

     

    Note, Warzard / Red Earth still does not boot in MAME, I have no idea why, don’t worry tho, the decryption of it is fine, it’s just not booting for me.

     

    Note 2, ignore the regions, most dumped sets are actually Japan.

     

    Note 3, the strange outlines around the tiles are because they’re being drawn as solid, not transparent.. (mainly due to the fact that there is nothing behind them right now)

     

    jojo_colours_1.png

     

    jojo_colours_2.png

     

    jojo_colours_3.png

     

    jojo_colours_4.png

     

    jojoba_colours_1.png

     

    jojoba_colours_2.png

     

    jojoba_colours_3.png

     

    sfiii_colours_1.png

     

    sfiii_colours_2.png

     

    sfiii_colours_3.png

     

    sfiii3_colours_1.png

     

    sfiii2_colours_1.png

     

    sfiii2_colours_2.png

     

    sfiii2_colours_3.png

     

    sfiii3_colours_1.png

     

    sfiii3_colours_2.png

     

    sfiii3_colours_3.png

     

    http://haze.mameworld.info/2007/06/16/cps3-colours

  6. June 15th, 2007

     

    CPS3 Sound

     

    No real progress on the Backgrounds / Sprites / Palette i’m afraid. Lots of things have been ruled out, but no conclusions have been made on how it actually gets/decode the data from FlashRoms into RAM yet, it seems to be some kind of external DMA but we can’t find any parameters or what triggers it right now.

     

    On the good side of things, Eeprom access has been fixed, so SFIII / 2 / 3 boot without Eeprom hacks. Warzard still doesn’t boot for some reason, although ElSemi has it booting outside of MAME (it doesn’t reveal any more clues about the backgrounds/sprites work tho)

     

    Also, and this is the main thing I want report here, Phil Bennett has added preliminary sound emulation (as mentioned in the comments of the previous post)

     

    Here is a short OGG recorded from SF3 in MAME. As you can hear, the game is running even if you can’t really see anything apart from the health bars.

     

     

    insert1.png

     

    http://haze.mameworld.info/2007/06/15/cps3-sound/

  7. June 10th, 2007

     

    Keys to the World

     

    Andreas figured out the keys for the other games, giving us a bit more to work with. Of course, everything is stuck with error messages at the moment as I haven’t made much more progress with the CD-Controller emulation yet. I found that the amd / wd33c93 is supported in MESS (wd33c93.c), I don’t know how well it works tho, it’s only used by the Indy driver.. I guess I’m going to have to find out.

     

    Warzard - Complains about the CD-ROM?

     

    warzard.png

     

    Street Fighter III: New Generation - The Same?

     

    sfiii.png

     

    Street Fighter III 2nd Impact: Giant Attack - Likewise

     

    sfiii2.png

     

    Street Fighter III 3rd Strike: Fight for the Future - Same Message as the original JoJo

     

    sfiii3.png

     

    JoJo’s Bizarre Adventure - Same Message as the original JoJo

     

    jojoba.png

     

     

     

    http://haze.mameworld.info/2007/06/10/keys-to-the-world/

     

    [Edited on 6-10-2007 by pepinos]

  8. Thursday, June 07, 2007

     

    CPS-3 (6)

    As he said at the end of the previous entrance, the being able to reconstruct the cycles of x' partially has allowed me, as well, to study and (at the moment solely for Jojo).

     

    The first of which you occurred account is of which an operation XOR with the high part of the direction was being carried out (what it caused that the bits showed to cycles of 2^15 masks in ahead); once you applied the same mask to obtain the previous values, you found that the bits showed smaller cycles now, although no longer always with the characteristic of which second half of the cycle was just as first but invested. In addition, although the size of the cycles seemed ordered according to the order of the bits, the 4 first had the same length that last 4 and three of the bits (the number # 1, #4 # 5) showed a property (initially) amazing: in them was clear the effect of an operation XOR with certain bit of the direction (not the same one in the three cases).

     

    In that state of things, the possibility existed of trying to reconstruct better the bits of x' as large as and and using the new knowledge the cycles; nevertheless, I chose to study the structure before of and, under the supposition of which, since we hoped that and were, in a certain sense, "more simple" that x', could more easily be attackable.

     

    After studying a little the data, I realized of which (except for the 4 first bits) the cycles showed one of their stuffed halves with cilos of smaller size 2^4 times; along with other indications, this seemed to indicate that the own one and was generated by means of an operation of type rotate_left(a, 4) XOR (to AND B) where, in this case, b was the low part of the direction operated by means of XOR with a certain fixed number.

     

    With this new knowledge, I reconstructed the cycles of a partially and tried to study its structure. These cycles yes that showed the property of which his second half was exactly like his first but invested, which, next to a visual inspection of such, already made think that they were generated of relatively simple form.

     

    I tested some with more or less satisfactory results and, to little, those 3 bits that showed the surprising behavior that mentioned before finished giving the idea me of how they were being generated exactly (one of those ideas that arises just waked up like result of the work of the subconscious mind during the night): basically, an operation rotate_left(c, 2) + c was being used, where c, as well, was the low part of the direction operated by means of XOR with a fixed number.

     

    After more work of analysis (quite tedious) and many simulations, I have concluded that the following scheme produces the values and that we were looking for:

     

    x? ((A&0xffff)^C1)

    x? rotate_left(x, 2)+x

    x? rotate_left(x, 4) ^ (x & ((A&0xffff)^C2))

    x? x ^ ((A>>16)^C3)

     

    The values of C1, C2 and C3 that produce the result that we looked for are unique and, of fact, C2 is, in Jojo, the same number that already had appeared before in these notes like the value that was being applied by means of a final operation XOR al del fact algorithm (, is becoming the same thing: x? x ^ ((A&0xffff)^C2).

     

    Now, once reconstructed (supposedly, at least) and, we can try to use the first table of CPS-3 (5) to reconstruct with more fidelity x', later to study its structure. According to my initial expectations, x' must have one more a structure more complex than and, but we will have to hope to it to have studied to draw conclusions...

     

    http://andreasnaive.blogspot.com/

  9. speaking about trainers

     

    i have a game called raiden dx,which possibly it can be played in psx emulator(or i can play this game with the D-Fend emulator?)

     

    gamesharks trainers can be supported with psx emulator, or is there any other emulator,which i can play this game and also the raiden2 with a trainer way?

     

    thanks

×
×
  • Create New...