• chevron_right

      Optimisez vos jeux SNES avec le projet FastROM pour les rendre encore plus rapide !

      news.movim.eu / Korben · Wednesday, 5 July, 2023 - 07:00 · 2 minutes

    Est ce que vous connaissez FastROM ?

    Ça va vous plaire, surtout si vous êtes nostalgique comme moi des jeux de la Super Nintendo de notre enfance. Je vous vois lever le sourcil, déjà à moitié convaincu.

    Le projet FastROM s’attelle à la tâche titanesque d’améliorer les performances des jeux SNES, en les optimisant pour fonctionner en mode « FastROM » c’est à dire à la cadence de 3.58 MHz plutôt qu’en SlowROM (2.68 MHz).

    Croyez-le ou non, cela permet au processeur de la SNES de lire les données 33,58% plus rapidement, réduisant ainsi considérablement les temps de chargement et le ralentissement lors des parties les plus intenses sur nos jeux rétro préférés. Pensez à des titres comme Super Castlevania IV et Axelay, qui ont vu leur fluidité grandement améliorée grâce à ça.

    Mais alors, pourquoi les développeurs à l’époque n’ont-ils pas directement implémenté FastROM dans leurs jeux ?

    Une explication plausible serait le coût. En effet, les puces SlowROM étaient en beaucoup moins onéreuses à fabriquer que les puces FastROM.

    Heureusement, il n’est pas trop tard pour profiter de ces améliorations grâce aux passionnés qui ont créé les patchs FastROM. Ces patchs sont conçus pour être extrêmement fiables, avec des vérifications internes pour minimiser les erreurs. Ils sont donc compatibles avec les émulateurs SNES, les systèmes FPGA tels que MiSTer, et même le matériel SNES / Super Famicom d’origine via des cartouches flash (c’est à dire des cartouches sur lesquelles vous pouvez mettre des ROMs…).

    Vous vous demandez sûrement comment utiliser ces fameux patchs pour profiter de vos jeux SNES en version améliorée. Je vous avoue que cela peut être un peu technique, mais ne vous inquiétez pas, je vous ai déniché un excellent guide (en anglais) qui vous expliquera comment appliquer l’un de ces patchs FastROM à la ROM d’un de vos jeux.

    Vous vous demandez probablement quels jeux sont concernés par ces améliorations FastROM, bande de coquins ?

    Eh bien, la liste est longue ! Je vous propose d’aller la voir directement ici (les jeux sont en anglais), maintenue à jour par Kando Wontu. Cette liste contient des jeux comme Aladdin, Chrono Trigger, Earthworm Jim, ainsi que les différents opus de Final Fantasy et bien d’autres encore !

    Alors qu’attendez-vous ? Plongez-vous dans vos souvenirs d’enfance en redécouvrant vos jeux SNES préférés grâce au projet FastROM, et profitez-en pour partager cet article avec d’autres amateurs de retrogaming.

    À découvrir ici.

    • chevron_right

      Unofficial Link to the Past PC port is a reverse-engineered gem

      news.movim.eu / ArsTechnica · Wednesday, 1 February, 2023 - 22:04

    Zelda running on a Windows PC window with a file directory next to it.

    Enlarge / Among the many upgrades made possible by this project, A Link to the Past is now a game you can Alt+Tab out of when a supervisor comes near. (credit: Nintendo / Kevin Purdy)

    It's a sad reality among retro emulation enthusiasts: You often spend far more time crafting your perfect setup than playing the games. You get your controller, linear filtering, sound engine, and everything else just right, and then you discover that your favorite game of yesteryear is far slower and more annoying than you remember.

    That's why the hard work of reverse engineers is so valuable. Hobbyist decompilers have worked to turn ROM binaries into thousands of lines of human-readable code , allowing for far deeper audiovisual upgrades, features, and other tweaks. It's resulted in some impressive new takes on games, including Ocarina of Time , Sonic the Hedgehog , and Grand Theft Auto . And unlike many fan-based projects, reverse engineering generally passes legal muster as long as no copyrighted assets are distributed along with the decompiled code.

    And they often far outshine game publishers' official offerings , which usually amount to little more than officially licensed, lightly tweaked emulation.

    Read 7 remaining paragraphs | Comments

    • chevron_right

      Un cheat code découvert 28 ans en retard fonctionne sur Switch !

      news.movim.eu / JournalDuGeek · Wednesday, 10 August, 2022 - 15:30

    copie-de-ajouter-un-titre-7-158x105.jpg Little Mac dans Super Smash Bros sur l'arène Fire Emblem.

    Ce jeu cachait un mode multijoueur qu’un joueur vient de découvrir par pur hasard en testant des codes de triche.

    Un cheat code découvert 28 ans en retard fonctionne sur Switch !

    #Toulouse. #Rassemblement : pour une autre politique dans l’éducation et l’arrêt des attaques contre l’école publique.

    Nos organisations #SNES, #SNUIPP, Fnec Fp #FO, #SUD #Éducation, #CNT et #CGT Éduc’action appellent l’ensemble des collègues à se rassembler massivement :

    Mercredi 10 juin à 14 heures

    Devant le rectorat de Toulouse

    Le tract intersyndical : http://www.cnt-f.org/cnt31/spip.php?article1193

    #syndicalisme #Lutte #31 #CNT31
    • chevron_right

      Running Super Nintendo (SNES) games on my OSMC equipped Raspberry Pi media center.

      Roelof Pieter · Thursday, 16 November, 2017 - 19:12 edit · 5 minutes

    #howto #osmc #snes #games #raspberrypi

    Edit: Updated with script to create backup of the save file

    I have a Raspberry Pi 2 mediacenter running OSMC. I have spent quite some time in getting the SNES emulator Pisnes to work on it. An "easy" solution to this would be to install Retrosmc. But this installs so much more than needed. When I tried this installing took a few hours on my Raspberry Pi 2. It also makes the whole install much more complex with installing: Retropie, Emulationstation, lots of emulators etc... . Overkill for me. But getting just Pisnes to run wasn't easy (for me). I tried a lot of different combinations of settings but ran in trouble all the time. Pisnes wouldn't start or there was no sound or the buttons of my game controller didn't react (the control-sticks and the d-pad did though. Huh?!). Installing Retrosmc did learn me that it could work. So with new hope I started again and finally got it running.

    In the end I managed to get it to work. For this I used some scripts supplied by retrosmc and molded them for my needs. Finally I am able now to start my media center, browse to the game in question and fire it up. It basically works as follows:

    1. I use Advanced Emulator Launcher to start the game. Advanced Emulator Launcher calls the first script.
    2. The first script (pisnes.1.sh) is begins with stopping several services. At least the mediacenter (Kodi) service. And in my case also some services for the web server I am running. This frees up CPU cycles, needed for the emulator.
    3. Then it calls another script (pisnes.watchdog.sh) that keeps checking in the background whether Pisnes ('snes9x' process) is still running. When not (so when I stopped playing) it will start those services again.
    4. After starting the watchdog script it will then launch pisnes in an openvt session. This helps against problems with sound and the controller I believe.
    5. The actual start of pisnes is done through another script: pisnes.2.sh. Combining the first and the second scripts have been fruitless for me, so I'll just keep it this way. This second script starts Pisnes with the requested ROM file, so I can play the game. It also redirects ALSA sound from the 3,5mm-jack output to HDMI output.

    I normally use the 3,5mm-jack output to listen to internet radio (Studio Brussel) on my connected stereo through MPD. This can also be done in Kodi alone, but now I don't have to start the TV only to listen to some radio. Just fire up the app on my phone or laptop.

    pisnes.1.sh :

    This is the script that is first called from Advanced emulator launcher. I am not really sure what everything does exactly or why, but hey: It works. In this and the following scripts I mainly searched and replaced "emulationstation" for "pisnes" in the original scripts. And I cleaned up stuff that didn't seem relevant.

    #!/bin/bash
    # This scripts starts the pisnes watchdog deamon and
    # pisnes itself while stopping KODI mediacenter and some
    # other "heavy" services afterwards.
    # Script by mcobit, edited by roelofpieter
    
    # clear the virtaul terminal 7 screen
    sudo openvt -c 7 -s -f clear
    
    # start the watchdog script
    sudo su osmc -c "sh /opt/pisnes/pisnes.watchdog.sh &" &
    
    # start pisnes on virtual terminal 7 and detach it
    sudo su osmc -c "nohup openvt -c 7 -f -s /opt/pisnes/pisnes.2.sh $1 >/dev/null 2>&1"
    
    # clear the screen again
    sudo openvt -c 7 -s -f clear
    
    # wait a bit to make sure pisnes is running detached from kodi
    sleep 0.5
    
    # stop kodi and other "heavy" services to free cpu and input
    # devices for pisnes. And mpd because of the sound output
    sudo su -c "systemctl stop mediacenter &" &
    sudo su -c "systemctl stop nginx &" &
    sudo su -c "systemctl stop php5-fpm &" &
    sudo su -c "systemctl stop mysql &" &
    sudo su -c "systemctl stop mpd &" &
    
    exit
    

    pisnes.watchdog.sh :

    This script keeps running in the background and will restart Kodi (and other services in my case) when pisnes is stopped.

    #!/bin/bash
    
    # Script by mcobit, edited by roelofpieter
    
    # give pisnes time to start up
    sleep 8
    
    # check for pisnes (snes9x) running
    while [ true ]; do
        VAR1="$(pgrep snes9x)"
    
    # if pisnes (snes9x) is quit, clear the screen of virtual terminal 7 and show a message
        if [ ! "$VAR1" ]; then
            sudo openvt -c 7 -s -f clear
    
    # restart kodi and other "heavy" services. And mpd...
        sudo su -c "sudo systemctl restart mediacenter &" &
        sudo su -c "sudo systemctl restart mpd &" &
        sudo su -c "sudo systemctl restart mysql &" &
        sudo su -c "sudo systemctl restart php5-fpm &" &
        sudo su -c "sudo systemctl restart nginx &" &
    
    # exit script
        exit
    else
    
    # if pisnes is still running, wait 2 seconds and check again (could probably be longer, but doesn't seem to impact performance by much)
        sleep 2
    
    fi
    done
    exit
    

    pisnes.2.sh :

    And this script will start the actual game. Additionally it will create a backup of the save file. Should I accidentally overwrite it (with a single button press, namely the right "shoulder" button) I always have a copy of the file.

    #!/bin/sh
    
    # Redirect the sound to the television
    amixer cset numid=3 2
    
    # Make a backup copy of the save file. Pisnes runs as root, hence the savefile location.
    fullromfile=$(basename "$1")
    romfile="${fullromfile%.*}"
    sudo cp /root/.snes96_snapshots/$romfile.000  /root/.snes96_snapshots/$romfile.000.$(date +%Y%m%d%H%M%S)
    
    
    # Start the actual game
    sudo /opt/pisnes/snes9x $1
    
    # Redirect the sound back to external output
    amixer cset numid=3 1
    

    Advanced emulator launcher

    I didn't find the Advanced emulator launcher very intuitive at first. This is how I set it up the basics. First I created a new launcher of the type "ROM launcher (Emulator). Since I installed pisnes and it's roms in /opt/pisnes the launcher application is /opt/pisnes/pisnes.1.sh on the SD card. The roms path is (for me) /opt/pisnes/roms/. The file extension is "smc". I could tell this by looking at the rom files ;-) . Application argument is the default "$ROM$", but I have no idea if this matters. I gave it a name and for platform I obviously choose Nintendo SNES. The scraped artwork goes into /opt/pisnes/roms/artwork. Then I added ROMs by choosing " Add ROMs > Scan for new ROMs". From there on I could select a ROM and launch it.

    Phew. And now: Zelda!

    Zelda