Infuse (Zeebo / BREW multiplatform emulator) development #4 - Double Dragon on Windows port

Поделиться
HTML-код
  • Опубликовано: 15 май 2024
  • Infuse is a Qualcomm BREW subsystem reimplementation and Zeebo high-level emulator written from scratch, based purely on clean reverse engineering attempts. Currently it is using dynarmic ARM JIT core and runs three Zeebo commercial games in fully playable state which is Double Dragon, Crash Nitro Kart 3D and Zeebo Family Pack as well as some of the BREW samples. Video contains footage of Double Dragon running on Infuse A1 development preview Windows (x86_64) port.
    Audio backend has been vastly improved in order to provide better compatibility which led to Crash Nitro Kart 3D fully running with music and sound effects as well as having better audio quality in general. Infuse audio backend supports basic MIDI, PCM/ADPCM and MP3 playback and multiple streams mixing with resampling functionality independent of host sampling rate and channel count. Currently waveOut API for Windows, Core Audio for macOS, Media Kit for Haiku OS as well as PulseAudio for GNU/Linux sound backends are available.
    Gamepad handling has also been improved, now it detects if gamepad is connected and disconnected during runtime. Additionally, alternative keyboard mode was provided that allows to play games to some extent without having gamepad connected. However, input handling is quite limited on Haiku OS port due to the current state of this operating system, other ports are not affected by such as Haiku port uses separate Device Kit input backend implementation.
    Many fixes were provided, mostly related to the stability as well as performance areas. Issues with memory leaks and fragmentation which slowed down games after some time were fixed. Such issue allowed me to implement some improvements and new functionality in debugging area, so now I do have some basic profiler in my memory management code. Resamplers are now of higher quality and have separate states as well as resampler initialization is much faster compared to old code fixing lag related to playing new audio samples on low-end native devices. Audio output quality is now acceptable without crunchy or distorted sound nor major clipping issues while still lacking some polish that will be improved in later stage.
    User interface is now available with MIF support so games are now automatically detected with information and icons loaded from the assets. Infuse currently uses Zeebo game icons that end-user was not even supposed to see. In the future I do plan to implement partial Z-Wheel support or at least use Z-Wheel animations in the Infuse main menu when provided by the user. If no modules are found message "BREW applets not found" will be shown indicating that user needs to check README for further information how to setup Infuse. There is also an official logo which is used as an icon for the application depending on the port. :)
    Infuse now also contains both LICENSE and README files with licensing information as well as documentation with detailed information regarding installation, usage, controller and keyboard mapping as well as limitations of each port of the current Infuse development preview release. I strongly recommend to read both of these files before using Infuse, especially for the first time.
    Configuration menu allows to set Infuse emulator behavior such as but not limited to changing aspect ratio, switching between fullscreen and windowed mode, selecting soundfont for MIDI rendering, defining behavior of controllers or changing menu theme. User can provide its own *.sf2 soundfonts which are automatically detected by emulator and can be used for MIDI playback.
    Scenario in which user tries to execute not supported BREW module using unimplemented API is also now properly handled. If such event occurs, black screen with message "Unimplemented BREW API executed" is shown.
    Work on native version of Infuse running on real ARM CPU without emulation was also done, after some minor adaptations it now successfully boots games as expected. However, many issues with performance and audio quality remain due to such native port will be released in later stage depending on the progress while still being treated as experimental version.
    Last but not least, Infuse now stores configuration and mod/mif content inside user directory. Each port has different path as described in README Markdown file which allows to separate Infuse as an application with BREW as an emulated environment and ease process of upgrading Infuse release in the future. This also means that initial setup differs slightly on the selected port due to the different path being used, however for most if not all ports it is stored inside user configuration or home directory.
    Finally, background music has been selected with approval of the music author, I hope you will like it as much as I do.
    Background music:
    'Chasing Daylight' by Scott Buckley - released under CC-BY 4.0. www.scottbuckley.com.au
  • ИгрыИгры

Комментарии • 26

  • @ultrapyrusbrawler
    @ultrapyrusbrawler 17 дней назад +3

    Always a joy to see this project's progress! Seeing running so well, in such high quality is a site to behold. You truly are doing a great service to game preservation; not to mention, it's nice that a hidden gem like Double Dragon will finally be widely available. Hats off to you, Tuxality!

  • @oldstylegaming
    @oldstylegaming 5 дней назад +1

    I have to say thankyou for all your hard work, a couple of year ago I did a video comparison of all DD games and I had to get footage from KrzOne and take his word that DD Zeebo was the best....tonight I have just played the game through on your emulator and its awesome :-)

  • @joaovanblizzard8912
    @joaovanblizzard8912 11 дней назад +2

    Its só good, Double Dragon Works Very well

  • @RafaelSantos-yn8wp
    @RafaelSantos-yn8wp 17 дней назад +5

    Thank you for bringing us news, I will not demand anything from you, I will just ask you not to give up on this project and continue bringing us news.

  • @krzbrew
    @krzbrew 17 дней назад +4

    Looks a bit quicker than it is on the console.

  • @krzbrew
    @krzbrew 17 дней назад +3

    Nice work! I hope you manage to handle it until release.

  • @TerraFuu
    @TerraFuu 3 дня назад

    Thanks for the awesome looking update.

  • @MoonSarito
    @MoonSarito 17 дней назад +1

    You're doing a really incredible job, it's great to see that there's already a port for Windows.
    Could you test other games later?, Zeebo F.C Super League in my opinion is one of the best games on the console, it's a very fun game for those who enjoy playing Super Mario Strikers and Um Jogo de Ovos ( A Game of Eggs ) is actually a pretty good 2D platformer, I used to playing these two games with my brother for days, it would be great to see them finally running on PC.

  •  16 дней назад

    Está ficando sensacional! Parabéns demais

  • @magnojss3784
    @magnojss3784 17 дней назад +2

    Sensacional o seu trabalho parabéns ❤

  • @caveiracibernetica
    @caveiracibernetica 4 дня назад

    Amazing!

  • @Rafaelgames1_
    @Rafaelgames1_ 16 дней назад

    Cada dia melhor, logo menos estaremos nos divertindo 😎

  • @kurufuiori
    @kurufuiori 4 дня назад +1

    Great job, I was playing games of double dragon zeebo thanks to your work and uploading them to my channel, can it be played individually by connecting 2 controllers? Continue like this, you can still implement many things to the emulator such as save and load state, quick save and load, overclock, rewind, 2 players, full configuration keys, macros, cheat and if you want support for playing online

    • @kurufuiori
      @kurufuiori 4 дня назад

      I checked it and if it takes both controls, thank you very much boss

  • @ricardorodriguez5083
    @ricardorodriguez5083 17 дней назад +5

    It's not available for the public right?😓

    • @Neutrico88
      @Neutrico88 17 дней назад +2

      no.

    • @kurufuiori
      @kurufuiori 15 дней назад

      @@Neutrico88 🥲🥲🥲

    • @jeejfaaf
      @jeejfaaf 10 дней назад +1

      ​@@Neutrico88nowadays is in public now neutrico88 of maycontp member channel !

  • @Leoooooonardo
    @Leoooooonardo 15 дней назад

    Muito bom!

  • @ricardorodriguez5083
    @ricardorodriguez5083 13 дней назад +1

    Please make a video tutorial on inicial setup

  • @msmalik681
    @msmalik681 17 дней назад +1

    Is there a linux native port or is it just wine ?

    • @Tuxality
      @Tuxality  17 дней назад

      Currently there are two different Infuse ports for GNU/Linux. There is a generic one that should work with most distributions as well as another one dedicated for the Steam Deck as shown in other video. Infuse also works through Wine even on macOS / M1, however such is not recommended as native ports for such platforms are available.

    • @jeejfaaf
      @jeejfaaf 10 дней назад +1

      ​@@Tuxalityand what about the Mac native port too?

    • @Tuxality
      @Tuxality  10 дней назад

      @@jeejfaaf there is native macOS port available of Infuse A1 development preview as it was released for macOS, Windows, GNU/Linux, Steam Deck and Haiku OS.

  • @fuzzbear677
    @fuzzbear677 5 дней назад

    This is pretty nice but he needs more on here you got to have moves where you can pick a person up and slam them and stuff like that and you got to have the elbow on here to are you bringing this out on Neo Geo what system will it be on Dreamcast🎮🕹😀👍🏾