1. ChicoPancho

    ChicoPancho GBAtemp Regular
    Member

    Joined:
    Dec 1, 2019
    Messages:
    164
    Country:
    United States
    No one would risk their hobby by releasing brickware when they have software that is being used by thousands of people. The use of the atlas name is at worst a veil of anonimity to prevent ninty from getting them. Again, calling this malware is the same as calling the pc version malware.
     
  2. Goku1992A

    Goku1992A GBAtemp Advanced Fan
    Member

    Joined:
    Nov 20, 2019
    Messages:
    918
    Country:
    United States
    I hate to sound like a Jerk but isn;t the port overrated when you can play OG Mario 64 via retro arch? Or the NDS port via Melon DS? I wonder why bother

    I wonder if we would get some real gamecube/wii support instead of resorting to Lakka or Switchroot
     
    Last edited by Goku1992A, May 9, 2020
    bad361 likes this.
  3. Smoker1

    Smoker1 GBAtemp Psycho!
    Member

    Joined:
    Feb 17, 2015
    Messages:
    3,407
    Country:
    United States
    Just completed the Switch Build in 2 Days
     
    Bst22322, mathew77 and Broduskii like this.
  4. ChicoPancho

    ChicoPancho GBAtemp Regular
    Member

    Joined:
    Dec 1, 2019
    Messages:
    164
    Country:
    United States
    Melonds runs pretty poorly in my experience. We get full hd and 16:9 with the port
     
    Broduskii likes this.
  5. xbmcuser

    xbmcuser GBAtemp Regular
    Member

    Joined:
    Sep 8, 2007
    Messages:
    149
    Country:
    United Kingdom
    Where's Mario's head at the beginning title screen?
     
  6. Smoker1

    Smoker1 GBAtemp Psycho!
    Member

    Joined:
    Feb 17, 2015
    Messages:
    3,407
    Country:
    United States
    Probably got removed. Miss that part. LOL
     
  7. Goku1992A

    Goku1992A GBAtemp Advanced Fan
    Member

    Joined:
    Nov 20, 2019
    Messages:
    918
    Country:
    United States
    I just played the NSP version to see what's the hype about.... it looks slightly better but that's it. I rather stick to my retroarch version but maybe that's just me
     
  8. hippy dave

    hippy dave BBMB
    Member

    Joined:
    Apr 30, 2012
    Messages:
    5,948
    Country:
    United Kingdom
    How's the analogue camera on the testing branch?
     
  9. fgsfds

    fgsfds GBAtemp Fan
    Member

    Joined:
    Aug 28, 2018
    Messages:
    366
    Country:
    Russia
    It works. There are some small issues with it in general, but that's why it's still in testing I guess.
    There is also mouselook now.
    Saves might or might not be bugged.
     
    ShadowOne333 and hippy dave like this.
  10. regnad

    regnad Button Masher
    Member

    Joined:
    May 19, 2008
    Messages:
    2,324
    Country:
    The PC version doesn't have Shindou Edition rumble pak support, does it?

    I'd love to see that at some point. For the time being I'd prefer playing Shindou Edition on RA.
     
  11. Codiox

    Codiox GBAtemp Regular
    Member

    Joined:
    Jan 19, 2016
    Messages:
    185
    Country:
    South Africa
    where can i get the game?
     
  12. ManuscriptReplica

    Newcomer

    Joined:
    Oct 13, 2019
    Messages:
    36
    Country:
    United States
    Damn reading all this malware talk has me spooked lol. Just got my damn switch working again. :/
     
  13. Dothackjhe

    Dothackjhe GBAtemp Advanced Fan
    Member

    Joined:
    Dec 29, 2013
    Messages:
    590
    Country:
    Philippines
    PM'd you a link.
     
  14. Berserker666
    This message by Berserker666 has been removed from public view by linuxares, May 11, 2020, Reason: No, it's illegal..
    May 10, 2020
  15. azoreseuropa

    azoreseuropa GBAtemp Guru
    Member

    Joined:
    Nov 6, 2002
    Messages:
    9,830
    Country:
    Portugal
    Yeah, I should have say that it is still there but it will disappear slowly, thought. Get it if you can but I dont need it. I finished it with my actually N64 console a long time ago!
     
    SexiestManAlive likes this.
  16. owdeuk

    owdeuk Member
    Newcomer

    Joined:
    Apr 27, 2020
    Messages:
    14
    Country:
    United States
    octopus likes this.
  17. octopus

    octopus Custom Title
    Member

    Joined:
    Sep 6, 2013
    Messages:
    395
    Country:
    Somalia
    I wasted half a day trying to build it on Win. The Win version didn't take so long, but it just wouldn't compile for Switch. Oh man what didn't I try. Reinstalled msys, combed my PATH, edited files... Even tried WSL.

    Saw your post and it inspired me to try it on Arch. Built flawlessly with no tinkering whatsoever.
     
    Last edited by octopus, May 10, 2020
    owdeuk likes this.
  18. FAST6191

    FAST6191 Techromancer
    Reporter

    Joined:
    Nov 21, 2005
    Messages:
    31,136
    Country:
    United Kingdom
    Complicated and varies by language, processor used and a few other things.

    Generally though
    Most people vaguely involved in hacking, cheat making or whatever will have heard of disassembly.
    Here this is where the binary code as it would be run on the CPU is taken and fired through a program to turn that into the human readable form of the operations (instructions in computer parlance) that the CPU does, maybe with a couple of concessions for obvious things. The disassembly turning the binary into assembly code, assembly being a (CPU and in many ways system and even OS specific) means of programming a computer.

    However assembly is very hard/tedious to use so we have higher level languages to abstract some of the complexity away, make it easier to convert between systems and also more secure a bit later down the line (very hard to do the ASLR thing that is bothering Switch cheat makers when you code in assembly, not to mention if you are concerned with every little thing then security can slip away from you). Bonus is this was historically considered essentially one way for reasons we will cover shortly.
    Indeed one of the big draws of the PS1 and N64 were the abilities to program in C (thousands of new kids taught per year) rather than assembly (only highly paid nerds and greybeards by this point in history, today it is even worse, and generally even then horrendous to work with, port around to other systems and debug) or Basic (slow as sin).

    What each of these languages brings to the table and makes more complicated for decompilation efforts varies. Traditionally it got broken down into low level languages and runtime based languages (think Java, Python, Perl and the like where you essentially have a script that a program runs) and you can then decompile that more easily, though lines got blurry and get blurry even within runtime based stuff.

    Back to assembly though. In the fundamental basics of computing/programming (which, as with a lot of things, we get to largely credit one Alan Turing) there is something known as the halting problem. The general idea is a program will eventually make a choice of what to do, even an utterly basic conversion program will probably have something here. See loops in any intro to programming course ( https://www.tutorialspoint.com/cprogramming/c_loops.htm ) for the overview of that one, though for the sake of debate we can consider the IF ELSE, which is to say IF this happens do that ELSE do something other, and quite often such things run IF IF IF IF IF IF... IF ELSE and might well exist within another loop, or have the computer have options to break out of it on its own terms and do something else (see interrupts).
    When pulling apart the program by itself with just the binary you have no idea what the state is supposed to be as the program is not running to generate the state to compare things against (it is why we had dynamic recompilation emulators back... prior to that first N64 emulator in a technical sense but that was probably the big introduction to the world but general decompilation has taken until now really and still has major caveats and will probably only work for straight C for a while yet with C++ being a ways out).
    Decompilers, or the people making them, however realise that most of the time one particular branch in the path of the code is usually taken so don't have to keep tabs on potentially thousands of possibilities expanding as the program goes on.
    They can also note that certain constructions within assembly are the result of standard libraries (programming is all about reusing stuff already done rather than having to do it yourself) or common programming approaches (there are limited ways to do anything, certainly limited ways to sensibly do anything when you have limited computational resources), which is something the dynamic recompiler also makes use of.
    It is quite possible to scan a program if you can get it into plain form (no compression, no encryption, possibly optimise things or indeed deoptimise things) to find where all the particular subroutines lie, name them something and watch how the main program builds things up.
    If you have some nice debug options left over, or some leaks from other parts of the program for function names or something that can also help (Diablo also saw similar treatment as a basis of this -- https://www.gamasutra.com/view/news...red_Diablo_source_code_released_on_GitHub.php and video).
    Can also help to run the program a few times to generate info -- ROM hackers have done lesser versions of this for years (FCEUX for the NES has a nice feature, https://tasvideos.github.io/fceux/web/help/fceux.html?TraceLogger.html , where you do everything but what you want, and then what you want, and the different things that had not happened before are what it says you might want to look at this. GBA hackers will often run things, note all calls to the ROM from compression functions in the BIOS and thus have a short list of places to look for good stuff and what it is supposed to be once you get there on the compression side of things, indeed compression tools may even be able to accept these logs).
    With one or more of those you can then start to abstract the basics away back into the functional (maybe even actual) equivalent of the language it came from (or was translated into in some cases) and be left with fewer things to have to manually understand, and an easier job with the high level stuff.
    It should also be noted that inline assembly is a thing -- C is great and all but occasionally you do need to get down and dirty with the CPU. To do this a dev might drop into some assembly for a little bit to make it as tight (or as complicated if they are trying to prevent hackers -- see deobfuscation by optimisation for a somewhat related concept, and another thing to feed into your decompilation tools) as they need it to be. With no C or whatever to back into then this can frustrate decompilation efforts. Today this is not so commonly seen (Microsoft for their stuff yanked it in favour of something called compiler intrinsics a while back, and as mentioned certain types of security don't play well with it) but back in the day it was common for a lot of things.
    It gets an awful lot more complicated as you can then start to get into really fun areas of maths, probability, practical computation, compiler theory (I barely even scratched the surface of that one) and computation in general to hone this method down, to say nothing of it helping if you are already a competent programmer in the language and possibly device in question (and maybe history of it all -- compilers today are a lot better than they were back then, and that also makes things harder if you only have things compiled on new compilers where the optimise things a lot more).

    To that end not a magic bullet, the resulting code has serious legal concerns (I can see some arguments in favour of, such as interoperability, that might hold up, however it is quite literally the opposite of independent recreation or clean room reverse engineering. Though at the same time outside of Nintendo sending in a lawyer to do the equivalent of this they can't use the code either), only works for a limited set of cases (so mostly C or scripting languages, and C# for reasons I am not going to get into here. Most games from the PS2 on up being C++ or worse. Most things older than the PS1 and N64 being assembly other than the PC which might well have been C for a while -- 1978 was the first and by 1989/1990 it was more or less dominant for most things), probably has to be trained on a given system (fortunately most things people care about are for X86 Windows and there are only half a dozen popular compilers with only a few major versions each, though this is not consoles of the mostly still programmed in C era) and still requires some fairly expert abilities to pick through once you start making headway (you probably don't have comments, design docs, or nice names for things to give a hint as to their function).

    Edit. Probably should have noted some actual decompilers and projects. People do take all that and put it into programs for people to use. The people behind the famous IDA disassembly/debug/reverse engineering tool you likely see in almost any hacker talk using assembly have a version of one for a few processor types https://www.hex-rays.com/products/decompiler/
    A few universities and PHD students also have some good stuff there (it really is cutting edge stuff). Not sure what we have in the open source world of particularly notable quality though https://rada.re/n/radare2.html has some stuff and https://www.nsa.gov/resources/everyone/ghidra/ also is worth mentioning in this.
     
    Last edited by FAST6191, May 10, 2020
    Obveron, scandal_uk, Slluxx and 2 others like this.
  19. specht

    specht GBAtemp Regular
    Member

    Joined:
    Oct 26, 2008
    Messages:
    234
    Country:
    Canada
    Removing the overhead of an emulator is always a good thing. I haven't tested to know for sure but I'd assume battery life would be improved playing this version over Mupen. That, and I've never been able to get the widescreen and 60 fps patches to work in Mupen (not the emulator option, but the patch that makes the HUD correctly display on the corners of the screen), the game just doesn't accept input with it for some reason.

    And with the source being available in C I'd think it'd open up more potential for mods outside of the asm hacking scene.
     
  20. Reecey

    Reecey Mario 64 (favorite game of all time)
    Member

    Joined:
    Mar 7, 2010
    Messages:
    5,815
    Country:
    Grab it off jits shop. Or if not google xci switch and click on the first site that comes up.

    I think it’s great SM64 has been done but what would be even better is Banjo Kazooie & Tooie being done also Conkers
     
    Last edited by Reecey, May 10, 2020
  21. regnad

    regnad Button Masher
    Member

    Joined:
    May 19, 2008
    Messages:
    2,324
    Country:
    I’m a bit disappointed we don’t have Shindou Edition rumble on this. Hopefully it will be added in the future.
     
    Smoker1 likes this.
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - Mario,