Custom Firmware for Atgames Legends Flashback with support for Arcade games

Discussion in 'Other Consoles & Oldies' started by rrifonas, Dec 30, 2018.

  1. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    [​IMG]
    Hi,

    I'd like to share my first custom firmware for the Atgames Legends Flashback.

    It removes the file extension filter from the SD Card and include support to load arcade games from the SD Card using Final Burn Alpha or MAME 2000.

    I did not test it extensively, and it may brick the console (as every software update). Since it doesn't affect the base OS or the recovery partition, if it doesn't work for you, or you don't like it, just install the update from the Atgames website again and it will remove all changes.

    Please keep in mind this console is more like a Raspberry Pi Zero/Raspberry Pi 2 than a SNES Classic or Super Retro-cade. It's a Dual-Core processor with 128MB NAND/128MB RAM, so a lot of games will run slow or do not run at all. MAME 2000 is the preferred emulator, as it runs everything pretty fast. The extensions for arcade games are weird due to technical limitation, you can read the technical info if you want to know
    why.

    If anyone find an issue that may affect the console let me know so I will remove the download link.

    Download link

    Instructions:
    + Copy arcade_update.img and retroplayer.ini to the SD Card
    + Insert the SD Card with the console powered off
    + Power on and follow the instructions
    + After the console is updated, remove the SD Card and rename or delete .img file and .ini file

    Release Notes:
    This is the same update as the one released by Atgames in Dec-28, but it includes the following changes:
    + Support for FBA games in 7-zip format (last character in the file name will be dropped in Menu). CPS1, CPS2 and some Neo Geo games work fine with this core (any game larger than Samurai Showdown 4 will fail to load) and you need to press DOWN + Start to insert coins (the menu option is not available)
    + Added MAME 2000 core, so there are 2 options of emulator. MAME games must be renamed from .zip to .zim. Vertical games will be displayed in 4:3 and some games will have display issues (like Mortal Kombat)
    + Master System and Game Gear games can be run from SD Card (.sms/.gg format)
    + Some settings can be customized in retroplayer.ini. Copy it to the root of the SD card to load it to the console, and remove it after loading the changes. If you don't remove it, the example file will replace the original file every time the console is rebooted. My example file has fps counter disabled (OSD=0), but you can enable it setting OSD=1
    + Disabled Rewind for Bad Dudes and Crude Buster (this can improve the framerate a little bit)
    + Removed texture filter from SSF2, Strider and Ghouls 'n' Ghosts. You can re-add it editing the retroplayer.ini in the root of the SD Card
    + Save states will be deleted when you apply the update. Save them to the SD Card before applying the update

    Technical Info:
    + Most of these changes were done using a hex editor and playing with the original Menu.
    + This device has MAME 2003 Plus (inside emulator partition) and FBA (inside rom partition), but both cores seem to be locked to the built-in games. MAME has only 4.3MB, which partially confirm this idea.
    + FBA core is being used only for Ghouls 'n' Ghosts. Other games use MAME, MOO or some proprietary core
    + No cores were modified in the emulator partition, so the gameplay from the built-in games will not be affected
    + FBA support was added by including the FBA core for SNES Classic. Ghouls 'n' Ghosts still running with this core
    + MAME 2000 core was added by removing one ROM that was not being used in the rom partition (Street Fighter II CE). The core is also for SNES Classic
    + FBA and MAME 2000 were added by editing 2 extensions/emulators assigned to Stella (.a26) and a Colecovision (.cv) in retromenu. It's a quick and dirty mod, so I needed to keep the same number of characters for each extension
    + FBA core supports 7-zip out-of-box, but you will need to re-compress your ROMS to use it
    + MAME 2000 extension '.zim' was chosen because '.zip' is already assigned to the built-in MAME 2003 Plus. I edited the core to replace .zip with .zim
    + Last character for 7-zip games is dropped because the menu is expecting a 3-digit extension. I couldn't find a way to fix it, and some games will be difficult to identify. It doesn't affect internally, as the games are properly loaded (with correct file name)
    + Larger Neo Geo games will fail load due to the available space to expand the games (the whole NAND has 128MB) and also likely due to the total memory (128MB)
    + The "full v2.6 update" released by Atgames (and which this mod is based), has 3 partitions that are fully replaced when you run it:
    1) emulator (10MB) -> It's a read-only compressed partition (SquashFS) containing the launcher (retromenu), emulator (retroplayer), and most of the cores. There is also a retroplayer_ro.ini with settings for the emulator
    2) rom (48MB) -> Contains the ROMs, game list file and FBA core in a compressed partition (SquashFS)
    3) data (4MB) -> retroplayer.ini (game settings/this file is writable and store custom controller layouts among other settings), sdcard_config.ini and save states

    UPDATE 1[Jan-24]:
    A couple of users reported that Williams games doesn't work with this core. This is caused by the core working without RetroArch, and trying to create the .nv files inside the read-only partition. While I did not fix the core, I've created an update with a workaround for these games. It's the same update as above but the Williams games will also work.


    UPDATE 2 [Jan-30]:
    I've updated the download link with the definitive fix for Arcade Games that require reading files from nvram (Williams games). You will see a folder 'mame2000' under GAME folder with the cfg and .nv files.


    Download link - Update with FBA, MAME 2000 and Williams games support

    The following games are now supported:


    Code:
    
    * Defender
    * Defense Command
    * Mayday Mai'dez
    * Colony 7
    * Stargate
    * Robotron
    * Joust
    * Bubbles
    * Splat
    * Sinistar
    * Blaster
    * Mystic Marathon
    * Turkey Shoot
    * Inferno
    * Joust 2
    
    
     
    Last edited by rrifonas, Jan 31, 2019
    MicroNut99, asper, WD_GASTER2 and 2 others like this.
  2. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    This definitely makes a LOT of possibilities for this humble bit of cheap hardware.

    you can expect audio latency that varies depending on emulator and arcade platform. but you can get a LOT of older games running, and even cps1 and 2, and the smaller neo geo. just be sure to always plug both controllers in if you want to play a 2p simultaneous arcade game.
     
  3. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    Anyone else having trouble with battery backed games not saving with this, or is it just me? they get written to \DATA but never loaded again. not for genesis or nes.
     
  4. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    Waring. this console does not support SRAM (it creates them, but does not load them). Considering that the Genesis Flashback HD DOES support them, i suspect this was intentional. Which is too bad because i prefer wired controllers, and the ones it uses are somewhat decent genesis controller clones that are probably compatible with real hardware. This also most likely means there is no way to get arcade games that require an nvram reset to boot to work ever. :( guess we are stuck with williams arcade hits for genesis to play joust.
     
    Last edited by Zaphod77, Jan 3, 2019
  5. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    Their 'retroplayer' is broken for battery backup but we are definitely at profit if you look at the original firmware (with no SD Card support) and the current state (with Genesis/NES/Master System/Game Gear/Sega CD/MAME 2000/FBA).

    Return it and buy a SNES Classic is always an option...
     
    Last edited by rrifonas, Jan 3, 2019
  6. WD_GASTER2

    WD_GASTER2 GBAtemp Regular

    Member
    4
    Jun 17, 2018
    France
    the machine was horrendously nerfed from the getgo. it was a step forward in emulation quality but 2 steps back in hardware power and output. what rrifonas did is nothing short of remarkable with the few resources this system has.
    deep down i wanted a more powerful android running device over last years :(.
     
    Last edited by WD_GASTER2, Jan 3, 2019
    rrifonas likes this.
  7. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    The Super Retro-cade hardware or any cheap android box using a quad-core Rockchip processor would be awesome. Their 2018 hardware are very specialized boxes - they were made for the built-in games with almost no room for customizations.
     
  8. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    Yeah super retrocade is nice and already takes roms out of the box, but it's also twice the price. It uses retroarch for all it's stuff too, possibly in violation of licenses.

    snes classic is expensive.

    this device, with hack, is decent for it's price. you get two wired genesis style 6 button controllers, a power supply, and the device.

    if someone gifts it to you, this firmware is nice. but if you have 60-80 bucks to spare, the super retrocade and or hackable snes classic are better.

    fair warning save states do NOT save the sram on this device! so only save state in game. do NOT go back to title or menu screen before saving state! you will lose everything and have to start all over!
     
  9. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    I have the SNES Classic, and it is good for its price as it runs almost everything up to MAME 2010 and there is a 'scene' around it to improve the emulators/cores.
    Another good and cheap device is the Amazon Fire TV Stick 4K. It has almost the same hardware as the PS Classic and I bought one for $35, you can sideload RetroArch and other Android emulators. If you have a XBOX One controller around it can be turned into a retrogame machine and runs games up to PS1.
     
  10. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    There' is a new update, but i cannot download it.

    unless i inspect, and undisable the button. lollerstakes. :)

    it still says its' 2.6, but i think joe and mac returns works better, and maybe even edward randy.
     
    Last edited by Zaphod77, Jan 16, 2019
  11. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    I did the same trick and used "Get-FileHash" PowerShell to confirm this is exactly the same v2.6 update.
     
  12. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    Odd. then why did they change it? strange... oh well will redo the custom update. was hoping they fixed sram support.

    They lso seem to have a very strangely editied galaga rom. it has no copyright message in either attract mode or coinup screen! but it does have a custom high score list mentioning bandai namco ent.
     
    Last edited by Zaphod77, Jan 17, 2019
  13. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    They have updated some ROMs in version 2.3 (when they also updated or replaced some emulators). SSF2 is clearly an updated ROM, Hong Kong has the current flag instead of the one from when HK was a British colony.
     
  14. element1500

    element1500 Newbie

    Newcomer
    1
    Jan 23, 2019
    United States
    i installed the custom update but i can't open any mame roms. i renamed to .zim and they appear on the console but won't run do i have to install one of the emulaters mentioned on the sd card? or is there somewhere i can get working roms for it? sorry am new to this
     
    Last edited by element1500, Jan 23, 2019
  15. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    You can find MAME 2000 (or 0.37b5) romset at archive.org.
     
    MicroNut99 likes this.
  16. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    Okay anyone have a list of working/not working games for the mame2000 and fba cores?

    and is this fba fba2012, fba2016 or something else?

    I can give some entries.
    williams games: not working, can't press reset button to get past nvram settings restore screen.
    games with samples: can't seem to find them, but most play without them.
    altbeast.zim, altbeas2.zim not working, improper emulation.
    blktiger.zim:working
    bbros.zim:working, small amounts of audio crackle.
    baddudes.zim:working, but audio latency is HORRIBLE!!!!! music is correct speed, though.
    galaga88.zim:working
    gaunt2.zim:working
    gaunt2p.zim:working, but difficulty is unfairly hard in this revision
    gnga.zim:working
    goldnaxe.zim:working (played to end)
    jrpacman.zim:working
    mspacman.zim:working
    pacman.zim:working
    tetrisbl.zim:working
    wardner.zim:working

    msword.7z:working
    unsquad.7z:working
    willow.7z:working

    pretty sure all cps1 and neo geo games that fit in memory work in FBA.
     
  17. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    Fba is the current version.
    There are some compatibility lists around for the SNES classic or Raspberry Pi, try searching for MAME4All compatibility list like the one for Retropie. The compatibility should be similar except for games that need additional settings (like Williams games) or games with weird resolution (like MK2, MK3). System 16 and System 18 games are known to have issues with older MAME versions. Altered Beast is fixed only in MAME 2010.
    Games with vertical orientation will show as horizontal in MAME 2000, this is a known issue with the core.

    Games with samples work if you create a samples folder and store the samples as .zim. I've tested Space Invaders and it works fine.

    EDIT:
    I've found the issue with the Williams games and it should be easy to fix if the instructions to compile libretro cores for ARM are available and/or understandable.

    The code to define the additional directories in MAME 2000 is dumb, it expects some variables being passed by the frontend and set the directories as "NULL" if it doesn't receive any input.
    This is what happens when a game is loaded:
    Code:
    SYSTEM_DIRECTORY: (null)
    CONTENT_DIRECTORY: (null)
    SAVE_DIRECTORY: (null)
    MAME2000_SYS_DIRECTORY: (null)/mame2000
    MAME2000_SAVE_DIRECTORY: (null)/mame2000
    
    The code from MAME2003 and FBA is smarter and creates its "system directory" under the games directory if there is not input from the frontend.

    I've also found that the core tries to create a folder "(null)" in the same path as the emulator, which is read-only. A quick workaround would be create the .nv files externally and create an update with these files. I've tested with Joust and it worked.
    @Zaphod77, can you share the list of Williams games? I will create a .nv file and include in a new update.
     
    Last edited by rrifonas, Jan 24, 2019
    MicroNut99 likes this.
  18. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    ahh that's why it didn't work. the samples have to be .zim too.

    Well i can tell you bubble bobble does not work right in mame 2000, because the mcu simulation is not accurate. was a while before it got decapped.

    when i look for fba cores for snes, i see 2012 and 2016.

    but i've also seen lists that say goldnaxe doesn't work, and it DOES work fine.

    so i want the mame .37b5 master workign games list, whihc i cant' seem to find anywhere (it predates GAME_NOT_WORKING flag, so...

    Anyway more testing

    System16 in FBA core: everything i try works, but too slow. even bloxeed lags when the garbage bar is flashing.
    snowbros.zim: runs, but sound and music is too fast.
    dkong.zim: works, with dkong.zim sample file in sanples
    dkongjr.zim:works, needs dkongjr.zim sample file
    ckong.zim:works, sound is a bit off, but it was always that way in mame back then.
    monkeyd.zim:works, but colors are WAY wrong.
    frogger.zim:works
    tmnt2po.zim:works
    tmnt22p.zim:works, gets past the nvram screen onn its' own.
    simpsn2p.zim:works, gets past nvram init on it's own.
    ddragonu.zim:works. doesn't lag any more than real game does. maybe even goes too fast at times.
    congo.zim:works. needs congo.zim sample file
    gaplus.zim:works, needs galaga.zim explosion sample.
    slapbtuk.zim:works, non bootlegs don't work right.
    solarfox.zim:works.
    rtype.zim: works.
    fpointbl.zim:works.
    rastan.zim:works
    ghostb.zim:works. significantly different from Meikyu Hunter G.
    superpac.zim: works.
     
  19. rrifonas
    OP

    rrifonas GBAtemp Regular

    Member
    4
    Jan 28, 2009
    United States
    About the list, I've seen that an user in AtariAge has tested several games, maybe you can contact him to get more information.

    MAME 2000 is good to have some fun, the emulation was awful at that time, it was more focused in playability than accuracy. Mortal Kombat for example runs at full speed, but the audio has like 1 second delay.

    I think I've got the list of Williams games, there are only 4 or 5 so it should be easy to create the nv files.

    Konami games work because they don't expect a reset to read the nv memory. If they can't read the file they just go ahead.

    System 16 games are very slow with any core except MAME 2000. Quad-core devices can run them really well.
     
  20. Zaphod77

    Zaphod77 GBAtemp Advanced Fan

    Member
    3
    Aug 25, 2015
    United States
    the main ones i want are joust/2 and bubbles. and should try robotron as well. FBA DOES store nvram properly in fba folder, but even for the games that write a new one on boot, mame 2000 is not storing them.

    as an alternative, there are patches for the williams games i think to skip the checkup and force a default nvram. the old dos williams collectin patcheed the roms so their self test went by fast.
     
    Last edited by Zaphod77, Jan 24, 2019
Loading...