Infuse (Zeebo / BREW multiplatform emulator) development #4 - Steam Deck port

Поділитися
Вставка
  • Опубліковано 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 Steam Deck port running various BREW/Zeebo software on Infuse A1 development preview, sorry for the quality I was really tired as it was recorded circa 2AM after long day of work.
    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
  • Ігри

КОМЕНТАРІ • 34

  • @MoonSarito
    @MoonSarito 2 місяці тому +4

    In all these years I don't think I ever imagined Zeebo's Double Dragon running on a Steam Deck, that's so awesome. xD

  • @PlatyNews
    @PlatyNews 2 місяці тому +3

    Amazing to see such progress so fast! Love that it got working the "exit" feature from the games...such unique feature for a game console hehehe

  • @alendadeelisia5185
    @alendadeelisia5185 2 місяці тому +3

    Ta ficando muito bom, é bom ver rodando no linux desde já.

  • @ZEROSero-yb9fl
    @ZEROSero-yb9fl 2 місяці тому

    Eres un crack maestro

  • @popparamaiores
    @popparamaiores 2 місяці тому

    Thanks! Muito obrigado pelo esforço.

  • @Luis-bv5it
    @Luis-bv5it 2 місяці тому +2

    Fico feliz em ver o andamento desse projeto, agora seria bom ver as roms onde estão hospedadas. Não há lugar nenhum.

    • @CebolaBros
      @CebolaBros 2 місяці тому +1

      M______, na pasta No-Intro

    • @Luis-bv5it
      @Luis-bv5it 2 місяці тому

      @@CebolaBros ah, ele está carregado com o emulador? Se sim, ótimo.

    • @CebolaBros
      @CebolaBros 2 місяці тому +2

      @@Luis-bv5it O emulador não lançou ainda, mas dá pra usar as ROMs num zeebo desbloqueado

    • @Luis-bv5it
      @Luis-bv5it 2 місяці тому +3

      @@CebolaBros Sim, eu já sei, só estava pensando nas roms porque quando for lançado, justamente porque o zeebo é difícil e pode ser preservado na web, sem falar nas exclusivas de um jogo de ovos e Galaxy on fire.

  • @carioca3154
    @carioca3154 2 місяці тому +1

    Muito bom!

  • @srvuk
    @srvuk 2 місяці тому +1

    I suspect that this may go down rather well with Steam deck owners.

  • @blakegriplingph
    @blakegriplingph 2 місяці тому +2

    I'm curious about NFS Carbon on thos emulator.

  • @MK-vi2cm
    @MK-vi2cm 2 місяці тому +1

    Can you do a tutorial for installation? I'm struggling to figure it out even with reading the instructions.

    • @MK-vi2cm
      @MK-vi2cm 2 місяці тому

      Nvm I figured it out. A vid still would be helpful for future noobs though 😅

  • @Dr_Hingis
    @Dr_Hingis 2 місяці тому +1

    How well does this thing run Prey and Bioshock?

    • @Tuxality
      @Tuxality  2 місяці тому

      Not tested, I assume it doesn't work yet. Please check compatibility list on my website.

  • @jrecio325
    @jrecio325 2 місяці тому

    Will it get widescreen support? Also widescreen on Mac?

  • @TranquilVision
    @TranquilVision Місяць тому

    There's a perfectly good D-Pad RIGHT THERE and you're using the touchpad?

    • @Tuxality
      @Tuxality  Місяць тому +2

      I paid for the whole Steam Deck, I'm gonna use the whole Steam Deck. :D

  • @evertaum2010
    @evertaum2010 Місяць тому

    double dragon is working, but without sound, can you explain what is happening?

    • @Tuxality
      @Tuxality  Місяць тому

      Are you talking about Steam Deck port? If yes then it works for me (video) as well as for the other users without any issues (seen videos of Infuse working on other people Steam Decks), both on the latest firmware as well as previous versions. So, I sadly cannot tell you what is wrong on your end without being able to reproduce the issue locally.

  • @jamisonbezerra5505
    @jamisonbezerra5505 2 місяці тому

    Disponível pata download?

    • @ultrapyrusbrawler
      @ultrapyrusbrawler 2 місяці тому

      Not yet; there are still a lot of kinks to iron out, I imagine.

  • @fabiojuniooliveira6862
    @fabiojuniooliveira6862 2 місяці тому

    What's the name of this handheld?

  • @WillianBorba
    @WillianBorba 2 місяці тому

    Will it run on Retroarch?

    • @Tuxality
      @Tuxality  2 місяці тому +1

      There is no RetroArch core available and currently there are no plans for implementing such.

    • @WillianBorba
      @WillianBorba 2 місяці тому

      😢​@@Tuxality

  • @altiereslima
    @altiereslima 2 місяці тому +1

    Play quake

    • @Tuxality
      @Tuxality  2 місяці тому +1

      Not working yet, please check compatibility list on my website.

  • @RafaelSantos-yn8wp
    @RafaelSantos-yn8wp 2 місяці тому

    play kingdom hearts: ua-cam.com/video/BH3qkcALjPg/v-deo.html

    • @Tuxality
      @Tuxality  2 місяці тому +1

      Not working yet, please check compatibility list on my website.

  • @emersonribeiro9426
    @emersonribeiro9426 2 місяці тому +1

    emulador zeebo deck port i no 3sd 😍🤩😍🤩🥰🥰😍🤩🥰😍🤩👍👍👍👍👍👍👍👍👍👍👍👍👍👍🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀