Sonic Prototypes (released by Hidden Palace)

Discussion in 'Discussion & Q&A' started by LazloPsylus, Oct 26, 2019.

  1. RandomName

    RandomName Newcomer Member

    Joined:
    Jun 3, 2020
    Messages:
    21
    Location:
    Russia
    I enabled CES and Extended Debug HUDs in sonic 1 prototype(special thanks to cardevero for pointing out some things).
     

    Attached Files:

    Last edited: Jan 3, 2021
  2. DeltaWooloo

    DeltaWooloo The noob next door Member

    Joined:
    Aug 7, 2019
    Messages:
    373
    hehe.PNG

    The SEGA screen, from the prototype, is now available to use in Sonic 1. It behaves exactly the same as the prototype without any bugs. If you would like to use this in your hack, download and open up the zip file and read the steps within the asm folder.

    EDIT: Also, as a little bonus. Here are the prototype songs (in .bin files) that I've included in a .rar file. Before you attempt to drag and drop the files, please convert the songs to Sonic 1. The reason is because Kurk told me that the prototype uses a modified Golden Axe 2 driver thus playing it unconverted in Sonic 1 will act strange. Please use SMPSConv to port the songs to Sonic 1 if you want to use it. I'll be also doing the DACs, PSGs and the sound driver very soon so be on the lookout for these.

    EDIT - terrible spelling and grammar :U
     

    Attached Files:

    Last edited: Jan 4, 2021
  3. AURORA☆FIELDS

    AURORA☆FIELDS so uh yes Exiled

    Joined:
    Oct 7, 2011
    Messages:
    759
    Working on a split disassembly of the Sonic 1 prototype right now. This is a split disassembly and right now, it should be usable by anyone. However, this is extremely undocumented and I would love some help with the filenames and code. If you want to edit the code, please edit the I64 file with IDA Pro 7.2 or message me directly with any documentation for labels and equates and such. Also, creating SONLVL project files eventually would be really cool.
     
  4. pixieditzy

    pixieditzy Newcomer Trialist

    Joined:
    Jan 3, 2021
    Messages:
    3
    Location:
    United Kingdom
    Yuji Naka himself actually liked the Tweet regarding this prototype's release. I can't say I blame him, he's wanted to include a Sonic 1 prototype in one of the Mega Drive collections since Sonic Mega Collection on the PS2, yet SEGA's seemingly haphazard preservation abilities screwed him over for the most part.

    [​IMG]
     
  5. <user deleted>

    <user deleted> Newcomer Member

    Joined:
    Jul 7, 2016
    Messages:
    24
    Where do you go to pick-up IDA, and is it freeware or commercial software?
     
  6. DeltaWooloo

    DeltaWooloo The noob next door Member

    Joined:
    Aug 7, 2019
    Messages:
    373
    IDA is both. Freeware and commercial. If you want the freeware, you can download it on their website which I'll provide:

    https://www.hex-rays.com/products/ida/support/download_freeware/

    However unlike the commercial version, it doesn't support the 68k however there is a tutorial giving you a brief explanation of it here:

    http://sonicresearch.org/community/...-smd-games-basic-disassembling-with-ida.4822/

    The commercial version (referred to as IDA Pro) is available at their website and would cost you a full range of prices. please see here for the table here:

    https://www.hex-rays.com/cgi-bin/quote.cgi

    I hope this helps your question!

    EDIT: Fix grammar
     
    Last edited: Jan 5, 2021
    RandomName and ProjectFM like this.
  7. Kilo

    Kilo Foxy Fren Exiled

    Joined:
    Oct 9, 2017
    Messages:
    391
    Location:
    A warm and lovely place~
    I've been working on my own disasm too~
    It's a lot earlier on, but I'm very extensive in everything. I've fully annotated the animation testing object, already!
     
    Bluestreak likes this.
  8. <user deleted>

    <user deleted> Newcomer Member

    Joined:
    Jul 7, 2016
    Messages:
    24
    What is the cheapest version I would need to buy in order to support 68k and be able to help out with the project?
     
    Bluestreak likes this.
  9. <user deleted>

    <user deleted> Newcomer Member

    Joined:
    Jul 7, 2016
    Messages:
    24
    Which tool are people using the most? Is there a common disassembly project going on, or are people doing their own disasemblies?
     
    Bluestreak likes this.
  10. RandomName

    RandomName Newcomer Member

    Joined:
    Jun 3, 2020
    Messages:
    21
    Location:
    Russia
    Most people use Ida Pro and people make their own disasemblies(which probably will stay private), though it looks like Aurora's dissasembly becomes common disassembly project.
     
    Bluestreak likes this.
  11. <user deleted>

    <user deleted> Newcomer Member

    Joined:
    Jul 7, 2016
    Messages:
    24
    Ok, so if the freeeware version of Ida Pro lacks 68k support, won't I need the commerical version? And if so, which version should I get?
     
  12. DeltaWooloo

    DeltaWooloo The noob next door Member

    Joined:
    Aug 7, 2019
    Messages:
    373
    You just need to buy IDA Pro which is the commercial version. If you want to help us with the disassembly, get version 7 or higher.
     
  13. <user deleted>

    <user deleted> Newcomer Member

    Joined:
    Jul 7, 2016
    Messages:
    24
    According to this page, IDA Pro costs $1,879 and at least $629 for renewal. Am I looking at the wrong version or does this tool really cost more than a new computer?
    https://www.hex-rays.com/cgi-bin/quote.cgi
     
    Last edited: Jan 7, 2021
  14. DeltaWooloo

    DeltaWooloo The noob next door Member

    Joined:
    Aug 7, 2019
    Messages:
    373
    It looks to be the price unfortunately.
     
  15. AURORA☆FIELDS

    AURORA☆FIELDS so uh yes Exiled

    Joined:
    Oct 7, 2011
    Messages:
    759
    You don't need IDA, I've been having to work around limitations with Git and IDA anyway and its pretty annoying, but I've found a way to do that anyway. I have been using IDA and main.asm to combine changes, which has worked so far. unfortunately it's also slower but I'm unsure of how to work around it either. Anyway, this does mean that IDA isn't necessary to help and do the research; simply a text editor and .NET would be enough (and Windows unless you find work arounds for Mac or Linux). I'll have to eventually figure out a better workflow for future projects
     
    DeltaWooloo likes this.
  16. vladikcomper

    vladikcomper Well-Known Member Member

    Joined:
    Dec 2, 2009
    Messages:
    415
    Since there've been so consistent talk on the disassemblers recently, allow me to give my 5 roubles~

    I'm genuinely surprised no one even mentioned Ghidra, a really powerful disassembler that is completely free, cross-platform and open-source. Not to mention it also comes with M68K support out of the box.

    Since its first public release, it's been widely regarded as one of the main competitors for IDA Pro, at least by independent researchers and hobbyists (the latter didn't use to have any noticeable alternatives before, except for a few niche products).
    Concerning straightforward code disassembling and managing the disassembled listings, there's virtually nothing Ghidra can't do that IDA Pro can.

    Of course, you won't get some of the more advanced features, like a fully integrated debugger, a cutting edge C decompiler, and the Ghidra's own code analyzer is times less smart than IDA's (so you may spend more time decompiling your favorite x86 binaries).
    But to be honest, you won't need any of that if your only goal is to disassemble and research a bunch of old ROMs.

    And as a friendly warning to anyone coming from IDA Pro: while Ghidra tries to maintain some similarities, it has a completely different architecture, and uses quite different approaches to maintaining projects. If you're used to IDA Pro's workflow, you may find parts of it way too inconvenient.
    From what I know, no one yet used Ghidra to make a full disassembly of anything MD-related. But I'll be happy if this changes in the future.

    I'm not as rich as some of you guys to easily spend $1,879 on IDA Pro for the sake of disassembling some 30 years-old ROMs alone; in fact, I can think of thousands of more reasonable applications of this much money (like building a top-notch PC). I believe Hex-Rays price policy to be... a little unfair to say the least. So Ghidra is the only and the best option for me now, since I don't need more than just a straightforward disassembler.
     
  17. RandomName

    RandomName Newcomer Member

    Joined:
    Jun 3, 2020
    Messages:
    21
    Location:
    Russia
    Is there anything that's better in Ghidra than in Ida Pro, that's related directly to program, rather than cost, privacy policies, etc.? If not, why not use pirated version of Ida Pro? Yeah, pirating is not good, but buying a program that will be used for a few days only for dissasembling 30 years old binaries is waste of money, especially this expensive.
     
    ProjectFM likes this.
  18. Kilo

    Kilo Foxy Fren Exiled

    Joined:
    Oct 9, 2017
    Messages:
    391
    Location:
    A warm and lovely place~
    Honestly I had never been able to use Ghidra myself. The UI's too confusing. IDA's been a lot more straightforward in my experiences.
     
  19. vladikcomper

    vladikcomper Well-Known Member Member

    Joined:
    Dec 2, 2009
    Messages:
    415
    Yeah, piracy. I didn't even want to touch it in my original post, so I specifically implied you have to buy it to use it, but I figured it would come up eventually, so I have to express my personal opinion on the matter to make my previous statement clear...

    I don't accept piracy in any form. So if a developer asks a specific price for their product and I can't pay that price, I won't use this product, even if I knew of a way to effectively obtain it without paying. The latter I personally consider stealing, as in physical stealing.

    I know some people may disagree with me, or at least try to justify piracy as a whole. But bear in mind, I'm just describing my own point of view as to why I will never use a pirated IDA Pro. Feel free to disregard my opinion if you think otherwise.

    Software piracy is not too different from physically stealing any goods that real world manufacturers produce. You illegitimately obtain for free something that dozens or hundreds of people in the industry spend a lot of their time and resources on. By pirating software and encouraging other people to do so, you're basically stealing money from the industry, from the people that actually make a living from it.
    Working at a company that develops software, I know exactly what I'm taking about.

    I find it rather sad how most of us agree that stealing real-life goods cannot be justified, yet fewer people can draw parallels between it and software piracy. As an excersize for those struggling to find similarities between the two, try to think of why we, as society, consider stealing to be unacceptable, then try to reapply your conclusions to the piracy itself.

    I've used Ghidra quickly disassemble a few ROMs, and it proved to be more than enough for my needs. I also did a few x86 disassemblies, and it was more than fantastic -- C code decompilation actually works!
    I agree that the UI and, namely, keyboard shortcuts, take some time to get used to, and you have to configure memory map properly to be able create and reference RAM labels properly, which requires some trial and error at first.
    But after a while, it all has become manageable, at least in my workflow. Sure, it has a few unavoidable shortcomings, like using some unusual M68K assembly dialect that our assemblers may not be able to parse without some form of conversion.
    But given free and open source nature of the product, I couldn't ask for more~
     
    Rivet likes this.
  20. Kilo

    Kilo Foxy Fren Exiled

    Joined:
    Oct 9, 2017
    Messages:
    391
    Location:
    A warm and lovely place~
    Here's a minor find
    upload_2021-1-8_7-43-1.png
    This is the order of levels that are supposed to play in the demo sequence on the title screen. Half of this goes unused as after the third special stage, it loops back to GHZ1.
    Aside from that note, I think it was supposed to play a demo of each zone. However, LZ and CWZ were in a state that Sonic Team didn't want to show just yet, so here they're replaced by another playback of MZ and SZ. I also think that each special stage level was supposed to play, rather than the same one over and over, but being that this prototype only has the one, it ends up looping.