Sonic Delta 40Mb

Discussion in 'Engineering & Reverse Engineering' started by Esrael, Mar 9, 2020.

  1. Esrael

    Esrael

    Tech Member
    226
    79
    28
    Brazil, São Paulo, Guarulhos
    Neto Assembler Editor / Sonic 2 Delta / Neto MD-DOS
    Fixed, please download New Build ( Sonic Delta v0.36b ) / Hardware

    "SSF" String restored in the ROM Header
     
  2. Esrael

    Esrael

    Tech Member
    226
    79
    28
    Brazil, São Paulo, Guarulhos
    Neto Assembler Editor / Sonic 2 Delta / Neto MD-DOS
    New Build released ( Sonic Delta v0.37 ) / Hardware

    The following errors was fixed.
    - Playing with Knuckles in "Knuckles Alone Mode" crashes after entering in Slot Machine Bonus Stage;
    - Random crashes in transition from Death Egg to Angel Island;
    - Insta-shield behaviour in Sonic 1 and Sonic 2 Levels where sometimes you can't destroy enemies and can get hurted;
    - Palette swap in Angel Island to fix HUD shadow and Lamp Posts;
    - Now, Knuckles can break the walls in GHz and SLz while gliding;
    - Now, Miles can break the walls in GHz and SLz in cooperative mode;
    - Fixed Lamp Post reference in Debug Mode For S3K Levels;
    - Invincibility and Super Sonic music changed for Sonic 1 and Sonic 2 Levels, now using classic Sonic 2 Sounds and for Sonic 3K Levels the unused sound in prototype is used a Super Sonic theme.


    Hint:
    -If you use Save State in emulators for Sonic 1 and Sonic 2 levels probably the game will crash after the Save State is loaded. This occur because emulators does not save the SEGA Mapper state. To get the Save State working just start a New "No SAVE GAME" and after the Green Hill is loaded you can load the Save Sate.


    Best regards:
    ------------------
    Neto.
     
    Last edited: Apr 25, 2020
  3. Rrose80149

    Rrose80149

    Member
    23
    0
    1
    Don't forget that Knuckles is still Pink with yellow socks when playing as Sonic or Tails in S3K and the competition menu theme is off sync. Plus, the 8th Special stage in S3 on the giant ring in the beginning of Angel Island Zone, Act 1 is still there, please fix it.
     
    Last edited: May 1, 2020
  4. Samui

    Samui

    Ice Kitsune Oldbie
    I'm trying to run this on Retroarch (1.8.4)/Genesis Plus GX (v1.7.4 5055106), but I'm only getting a black screen (and sometimes Retroarch crashes). I'm able to run this on Kega Fusion, however. Are there any specific settings I need to use in Retroarch/GPGX? I prefer using that emulator over Fusion, but I'll use Fusion if I must.

    Also, dumb question, but is Super Tails in this? I've only played through the first two zones so far. I'm really enjoying it!
     
  5. Esrael

    Esrael

    Tech Member
    226
    79
    28
    Brazil, São Paulo, Guarulhos
    Neto Assembler Editor / Sonic 2 Delta / Neto MD-DOS
    New Build released ( Sonic Delta v0.38 ) / Hardware

    The following erros was fixed:
    - Some slowdowns in Star Light / Scrap Brain caused by Walking Bomb object;
    - Crashes in Scrap Brain 2 when Results Screen is trying to unload;
    - S3 Eighth Special Stage issue;
    - Some path issues in Genocide City;
    - VDP corruption after beating Oil Ocean boss;
    - Water slide behaviour in Labyrinth;
    - Reset to Earthquake flag during level startup;
    - Added invisible barriers to ceil of Final Zone in the boss arena;
    - Some respawn issues in Oil Ocean objects;

    And
    - Changed S2 Hidden Palace Act 2 Level layout;
    - Water slides now works in the S2 Hidden Palace;
    - Fixed a possible cheat exploit, after beating S2 Death Egg with all Emeralds, where, if you restart the game and continue from a Save point, you will start the Angel Island with all Emeralds.

    Yes.


    Best regards:
    --------------
    Neto.
     
  6. Samui

    Samui

    Ice Kitsune Oldbie
    I noticed you added invisible barriers to ceilings in some other stages, as well. Caught me off guard during my run this past week, but it's motivation for me to re-learn the proper glitchless routes!

    Also, one other thing that caught me off guard - I got stuck in the floor in Winter Hill Zone 2: https://www.twitch.tv/videos/608823037
     
    Last edited: May 2, 2020
  7. penBorefield

    penBorefield

    Beginner Member
    Here are two bugs I found.

    1. After you hit the Final Boss from Sonic 1 for the last time, the explosion sprites overwrites the animals sprites.

    2. Every character can actually move albeit slowly (for Tails/Knuckles, his flight/glide does not affect the slowness) after Eggman escaped at the end of the said Final Boss.
     
    Last edited: May 2, 2020
  8. SyntaxTsu

    SyntaxTsu

    Member
    85
    23
    8
    Sonic Delta doesn’t work on BlastEm either. Makes it a strange oddity - something that doesn’t work on BlastEm and GPGX but does work on real hardware.
     
  9. Samui

    Samui

    Ice Kitsune Oldbie
    I got it running in Picodrive, at least.

    Update 5/3: Actually, been getting crashes. I don't know if it's related to level select. What's really stopping me from using Picodrive is being unable to save my progress. I'll stick with Fusion.

    Also, just curious, is there a reason the second phase of the S3K Death Egg robot takes more than 8 hits?
     
    Last edited: May 3, 2020
  10. Rrose80149

    Rrose80149

    Member
    23
    0
    1
    Maybe due to the Sonic 2 thing.
     
  11. Master Emerald

    Master Emerald

    A green crystal Member
    It doesn't work on BlastEM because this uses the 'Sonic & Knuckles' product ID and BlastEM disables the mapper when it reads this product code.
     
    • Informative Informative x 2
    • List
  12. SyntaxTsu

    SyntaxTsu

    Member
    85
    23
    8
    So all that’d need to be done would be to change the product code - perhaps to that of Sonic 3 or Super Street Fighter 2 or something?
     
  13. Sappharad

    Sappharad

    Oldbie
    1,352
    21
    18
    It works in BizHawk 2.4.1, which uses the GPGX core.
    https://github.com/TASVideos/BizHawk/releases

    (But that's because I opened an issue for it and provided the code change to fix it which they slipped into that release. Note that SRAM will not work, there was a discussion several years ago about how the SSF mapper wasn't designed with SRAM in mind so there's no way to 'detect' that. You can use savestates though.
    Why it works in BizHawk and not other versions of GPGX: The "everdrive" version of the SSF mapper allows any ROM bank to be remapped. The official SSF cart does not allow bank 0 to be remapped. Since BizHawk did not have the code for the everdrive version of the mapper at all, instead of merging the everdrive version as it is in GPGX upstream I just mapped it to the existing SSF support with bank 0 locked. This could be deemed wrong some day, but I don't know of any games that actually use the everdrive version of the mapper and need bank 0 unlocked.)
     
    Last edited: May 5, 2020
  14. Spanner

    Spanner

    The Tool Member
    3,261
    62
    28
    United Kingdom
    Sonic Hacking Contest
    When I played this one thing that just bothered me was the fact that existing bosses were being added to the "lost" levels instead of something altered or even custom.

    Have you looked into boss programming before? I think you could come up with something new. Same with objects like enemies, objects that would complement the zone, etc.

    There's a lot in this hack that could be retooled to reflect current-day hacks that get shown on this site, the Sonic Hacking Contest, and other places like SSRG for example, as there is a feeling out there that a lot of content in Delta needs a good refresh, especially after all these releases and all these years.

    Also, why does the boss hit counter not delete itself after a boss is defeated? It would look better if this was done.
     
    Last edited: May 5, 2020
  15. Dark Sonic

    Dark Sonic

    Member
    12,639
    224
    43
    Working on my art!
    Not sure if you're taking suggestions, but I had one more that I can think of: at the end of an act after you jump into the special stage ring, if at all possible instead of Tails endlessly jumping maybe he can just run off to the right?
     
  16. Samui

    Samui

    Ice Kitsune Oldbie
    Thanks for the info. I've decided to stick with Fusion, because I prefer having SRAM functionality - especially if I ever get around to doing New Game+ runs (cursed Sonic 2 special stages).

    (Edit: Yes, I realize I could just do level select and the all emeralds code. I'd rather earn it if I can. =P)
     
  17. Esrael

    Esrael

    Tech Member
    226
    79
    28
    Brazil, São Paulo, Guarulhos
    Neto Assembler Editor / Sonic 2 Delta / Neto MD-DOS
    I can´t get this emulator working to test, but I think the SRAM register must be supported by any emulator which follows SEGA standards. The Sonic Delta was made following SEGA documentation, Reading The SEGA Documentation About Bank Switchng (page 3 (#51)) says the register 0 switchs RAM/ROM to $200000 and register 1 To 7 are used to bank switch the ROM.
     
  18. Sappharad

    Sappharad

    Oldbie
    1,352
    21
    18
    This post by the developer of GPGX explains his reasons why he doesn't support SRAM with the SSF mapper:
    https://github.com/TASVideos/BizHawk/issues/695#issuecomment-299470714
     
  19. Esrael

    Esrael

    Tech Member
    226
    79
    28
    Brazil, São Paulo, Guarulhos
    Neto Assembler Editor / Sonic 2 Delta / Neto MD-DOS
    I think the emulator must follow the SEGA documentation, and not a single game, because is totally possible having ROM bank switch and SRAM simultaneous. As bank 0 is always fixed. The register #0 (A130F1) is always assigned to SRAM to be visible at 0x200000. My custom hardware mimics partially SEGA Mapper and has SRAM support.
    With this restriction some users will avoid using this emulator, having other options which enables both SRAM and SEGA Mapper simultaneous.
     
  20. Sappharad

    Sappharad

    Oldbie
    1,352
    21
    18
    Sorry, this was my fault. I brought it up with the author of GPGX and he explained the problem.

    I had previously been using an older build of the emulator code before the SSF mapper support was updated. I saw the emulator logic for detecting the SSF mapper and noticed Sonic Delta 40mbit worked when I put the Street Fighter 2 header into the rom. So I patched the old code I was using with the logic for detecting the SSF everdrive mapper which fixed the older build of your game when it had "SEGA SSF" in the header. This fixed it for me, so I submitted the code change to BizHawk, which still has the old GPGX code with my hack on top. The author of Genesis Plus GX informed me that the latest code does support the SSF mapper with SRAM. But you should not use the "SEGA SSF" header, because that is specifically for Everdrive and has the bank 0 difference that prevents SRAM. Instead the current version of that emulator will just work correctly with bank switching and SRAM.

    His comments are here:
    https://github.com/TASVideos/BizHawk/issues/695#issuecomment-624965422

    Once again, sorry. If you remove the "SEGA SSF" header, the game should work correctly in more emulators.