So i basically reverse engineered some Small 6502 Assembly Code for research as i wanna remake the entire Thing in x86 Assembly and wanted to ask as to would Licnese would be most appliceable to such Cases? >.>
Mostly due to the Fact that Public Domain Code is usealy not Good as depending where you live it can mean anything or can even be illegal from what ive read in some Country? D:
I suppose the best bet would be something like MIT-0 or maybe even LGPL considering im translatating the Code from another Language to a different one? >.>
But im still unsure if that counts a Derivative or what a Translation even can be licensed at all? >.>
Atleast the Copyrighted Assets have to be provided yourself from the Original Program so im in the Clear on that Front but the Code is the scariest Part as itd rather not get into Legal Trouble to be fair :(

  • kibiz0r@midwest.social
    link
    fedilink
    English
    arrow-up
    3
    ·
    9 hours ago

    I’ve got some skepticism alarms going off on this one.

    What exactly does “basically reverse engineered some assembly” mean here? Decompiled to C?

    And what do you mean by “remake in assembly”? Like, literally writing assembly by hand? Or compiling C source?

    I’m not a lawyer, but my guess is that binary-to-binary translation isn’t enough to strip the license, even if you’re making a pit stop in a higher-level language.

    • Retro-Hax@feddit.orgOP
      link
      fedilink
      arrow-up
      1
      ·
      8 hours ago

      yup basically that as in writing Assembly by Hand :P
      Translate 6502 Assembly Code to x86 Assembly Code that in turn Assembles into a Windows 95 Executeable (as im looking to doing some Windows 95 Programming) :P

  • Daniel Quinn@lemmy.ca
    link
    fedilink
    English
    arrow-up
    3
    ·
    10 hours ago

    If the work is a “clean room” reverse engineering job, as in: you didn’t read the original source to produce your version but rather looked at the input and output and wrote new software that had the same behaviour, the this new software is not a derivative work and you can use whatever license you like.

    The easy option is public domain, which effectively is a “this belongs to everyone” thing. There’s not much of a practical difference between this or MIT in my understanding.

    Another option would be something that preserves the freedoms you attach to the software like the GPL or LGPL if youre feeling less aggressive. These licences compel would-be modifiers to share their changes with everyone else, preventing (for example) companies that want to build their business on top of your work and then charging you for it.

    But basically, if you wrote it without referencing the original, it’s your work and you can do as you like. If you were referencing the original source though, then that’s a derivative work and you may be in violation of the copyright holder’s rights.

    • Retro-Hax@feddit.orgOP
      link
      fedilink
      arrow-up
      1
      ·
      10 hours ago

      ah alright then :0
      Thanks! :D
      and yea i did refer the 6502 Assembly Code which i got via a Emulator Debugger basically so ill probably just attach the CC0-1.0-Universal License to my Translation and call it a Day :P
      I would say it is very much not a derivative due to the Way the Hardware works/differs but hm ill just have to see really >.>

  • ShimitarA
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 hours ago

    Depends on what you want to make of that code i guess. Any license is fine, depends on use case and appliction.

      • ShimitarA
        link
        fedilink
        English
        arrow-up
        3
        ·
        9 hours ago

        Are you afraid that others might use your work and make money out of it?

        You want to protect freedom of access to your work?

        You want to have it available and still be able to make a profit yourself?

        You looking into ways to distribute or promote your work?

        Myself, I generally go GPLv3 because I believe that’s the right thing to do, but public domain (or MIT) is also popular. Something like LGPL or BSD might appeal if you plan to use it in a commercial/industrial framework.

        Also, are you sure that the binary you started from is actually free to use and you are not infringing somebody copyright? Keep in mind that time here is no protection. 15y or 20y old code/binaries can still be fought for by the original owners (Nintendo knows something about that kind of fights…)

        • Retro-Hax@feddit.orgOP
          link
          fedilink
          arrow-up
          1
          ·
          8 hours ago

          Well i do usually go for GPL 2.0 only or LGPL 2.1 or later (unless its Python where i usually go with either GPL 3.0 or AGPL 3.0 only) :P
          But with writing Assembly by Hand and translating Reverse Engineered ASM from one CPU Architecture to another one that is kinda my unknown basically :(
          Especially as im usually a Tooling Dev than a Game Dev more on PC and usually when i write ASM Patches it is for LGPL 2.1 and written from Scratch (So im not modsifying for Example existing Nintendo Code) :P