Sonic and Sega Retro Message Board: MainMemory - Viewing Profile - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help

Group:
Tech Member: Tech Members
Active Posts:
3373 (1.55 per day)
Most Active In:
Engineering & Reverse Engineering (2527 posts)
Joined:
14-August 09
Profile Views:
26877
Last Active:
User is offline Today, 02:38 AM
Currently:
Offline

My Information

Member Title:
Every day's the same old thing... Same place, different day...
Age:
24 years old
Birthday:
April 23, 1991
Gender:
Not Telling Not Telling

Contact Information

E-mail:
Click here to e-mail me
Website:
Website  http://mm.reimuhakurei.net/
Yahoo:
Yahoo  sonicmike2

Previous Fields

Project:
SonLVL
National Flag:
us
Wiki edits:
1,339
SA2 Emblems:
2

Latest Visitors

Topics I've Started

  1. Sonic Background Scrolling Screensaver

    15 May 2015 - 08:32 PM

    One day, I was thinking about SonLVL and wondering if I could use it to recreate the backgrounds from Sonic levels, complete with scrolling and animations. As it turns out, I could. So I decided to make a screensaver out of it, because it seemed like the best thing to do, I guess. And then, since I had the SMPS music player for Sonic & Knuckles Collection set up so it could be used by other programs, I decided to throw that in too.

    When first running the screensaver, you will have to configure it by right clicking and choosing the "Configure" option (or using the /c argument on the command line). You can choose whether or not to play music, the volume of the music (in percent, 0 to 1000, default 100), the number of frames per second (1 to 60, default 30), the speed to scroll at (-64 to 64, default 8), which levels to show and what order to show them in, and the amount of time to display each level for (hours:minutes:seconds:centiseconds, default 5 minutes).

    It is important to not install the screensaver by copying it into the system32 folder as is common practice, instead you should right click the file and select "Install".

    When running the screensaver, there are a few keyboard commands that will perform actions other than closing the screensaver: W toggles water when applicable, M toggles music, N jumps to the next level, up/down shift the camera up or down, and left/right increase or decrease the scroll speed.

    Here is the main part: Download
    .NET 3.5 is required, and MSVC 2010 redist if you want music. The screensaver will run on Linux, but without music.

    And the levels available so far are:


    The source code is on Sonic Retro's GitHub if you want to see how it works or contribute to development. Tech Members have access by default, anyone else may contact me for access.

    Before you all start requesting levels, keep in mind that I have to port all these by hand. I'm mostly familiar with Sonic 2, Sonic 1 I can barely understand the disassembly, Sonic CD has no disassembly (also music), Sonic 3 & Knuckles not only is poorly documented in the scrolling area, but it also has a lot of fancy tricks used to create the illusion of more layers, I could try to make them into actual layers, but I'd need some way to get full images for all the different "layers" (a similar thing applies to HTZ). Some levels have lots of animated tiles and I'm not sure how to handle that yet, I've got some ideas, I might have to try Metropolis Zone and see what works best. Levels from other games or different things entirely are possible, but I'm not likely to do it myself.

    If you look at the source code for each level, you can see that S2HPZ is closely emulating the original 68000 instructions, while LZ and EHZ are more high level but still producing identical results.

    About the framerate, I chose 30fps as the default because that's what works on my computer with minimal stuttering, and a graphics card isn't much help here, all the rendering is done in software, using a combination of my own 8bpp bitmap code from SonLVL and GDI+. If anyone has ideas for optimization, that would help a lot, possibly with SonLVL too.

  2. S&KC Mod Loader

    28 April 2015 - 12:19 PM

    Someone on SSRG posted a request for help with getting a level they had converted into Sonic & Knuckles Collection, but there was no easy way to do it, so I sought to rectify that.

    The S&KC Mod Loader has all the same basic features as the SADX/SA2 Mod Loaders, it can load DLL files containing custom code, it can load data from an INI file, and it has cheat code support. The one thing it doesn't have is file replacement, due to all the game's data other than music and sfx being in the EXE.

    Download

    To create a mod, create a folder within the "mods" folder of your S&KC install, and add a file named "mod.ini" within that folder containing the following lines:
    Name=Mod Name
    Description=Mod Description
    Author=Your Name
    


    Additionally you can add a DLLFile line pointing to a DLL file to load, and an EXEData line pointing to an INI file listing data to be replaced in the EXE.

    The S&KC disassembly has been updated to include more split data files, all the levels in SonLVL's INI, and an example INI file for the mod loader's EXEData setting.

    Note that I have only done minimal testing with unedited AIZ1 files.
  3. ADX player library?

    07 May 2014 - 10:59 AM

    For a long time now, I've been wanting to mod the PC version of Sonic Adventure DX to play music in looped ADX format, rather than WMA. I finally understand enough of how SADX interfaces with Windows Media Player that I think I could replace or supplement it, but looking at vgmstream, I have no idea how it works, or for that matter how DirectSound or any other audio library works.

    I just need something that can load an ADX file (other formats optional) and play, pause, resume and stop. It doesn't even have to be open source.
  4. SMPS in Sonic & Knuckles Collection

    04 May 2014 - 01:05 AM

    The HQ music hack is great, but I've wondered if it would be possible to play the original SMPS music. A few days ago, ValleyBell pointed me to the source code of SMPSPlay and over the course of several days we were able to hack together something that played only S3K's music and worked with S&KC.

    You can download SMPSOUT.DLL here. To use it, simply extract it to Sonic & Knuckles Collection's install folder, and rename it to MIDIOUT.DLL (or MIDIOUTX.DLL to use it as a fallback for the HQ music hack).

    Features:
    • SMPS playback by ValleyBell
    • Plays Sonic 3's midboss theme in Sonic 3 mode
    • Speed shoes and special stage speedups work perfectly
    • Doesn't make S&KC run faster than it's supposed to


    The source code is up on Sonic Retro's GitHub, and I may add support for an INI file specifying whether to play the S3 or S&K version of applicable songs.

    Requires Visual C++ 2010 Runtime.
  5. Sonic Retro on GitHub

    08 February 2014 - 09:23 PM

    Over the years, the community repository has been running Subversion (SVN), and then Mercurial (Hg), both of which have had many issues over time. So last December SeanieB gave up trying to get Hg to work, and decided to move everything off Retro to GitHub.

    The community disassemblies and programs have been moved to the Sonic Retro organization on GitHub. The organization's current owners are: SeanieB (seanieb64 on GitHub), FraGag (also runs the IRC channel), andlabs and MainMemory.

    • If you want to download the latest copies of the disassemblies: The Disassemblies page on the wiki has links that will create a zip of the latest version of the disassemblies.
    • If you're a Tech Member and want to contribute: You can post your GitHub account name in this topic, or PM one of the owners on the forum or IRC. You will be added to the "Techies" team, which has push access to all repositories.
    • If you are not a Tech Member and want to contribute: Fork the repository and submit a pull request. Someone will review your changes, and if they're good, they can be merged in.
    • If you want to make your own fork of one of the repositories: Go ahead, you should probably credit the original contributors though.
    • If you want to be notified whenever commits are made and/or discuss the projects: Come to the IRC channel #repo on irc.badnik.net.
    • If you want to add a new project: Contact one of the organization owners.
    • How do I Git? https://www.atlassia...m/git/tutorials

Friends