Super Mario 64 has been decompiled

Discussion in 'Other Consoles & Oldies' started by Ecchi95, Jul 7, 2019.

  1. BridgetX

    BridgetX Newbie

    Newcomer
    1
    Jul 17, 2019
    Brazil
    Thank you, it did work, i guess it was having problems with permissions and i was too dumb to give permission to the entire compiler folder
    in any case now that i can compile it i will see what kind of fun stuff you can do with the source
     
    CrashOveride and KiiWii like this.
  2. godreborn

    godreborn GBAtemp Guru

    Member
    12
    Oct 10, 2009
    United States
    now, we just need super man 64 to be decompiled. :)
     
  3. uyjulian

    uyjulian Homebrewer

    Member
    9
    Nov 26, 2012
    United States
    United States
    You know you can get the ROM map by looking at the debug information, right?
     
  4. Ecchi95
    OP

    Ecchi95 Advanced Member

    Newcomer
    3
    Jul 7, 2019
    United States
    No shit. But I'm doing this by hand. I have no intent of compiling it.
     
  5. TheGamingLord

    TheGamingLord Newbie

    Newcomer
    1
    Aug 3, 2019
    Sweden
    I've completely given up on compiling this, I have no idea why it doesn't work for me, I've followed the install.md instructions several times on two different computers through both virtualbox and wsl, but I keep getting the exact same error.
     
  6. CrashOveride

    CrashOveride Advanced Member

    Newcomer
    1
    May 29, 2017
    United States
    You tried the solution that worked for @BridgetX ?
     
  7. TheGamingLord

    TheGamingLord Newbie

    Newcomer
    1
    Aug 3, 2019
    Sweden
    Yes, but that didn't work
     
  8. Ecchi95
    OP

    Ecchi95 Advanced Member

    Newcomer
    3
    Jul 7, 2019
    United States
    Here are the compiled versions of stuff from src/engine and src/game, plus the decompress function from the asm folder.
    (Super Mario 64 (J) [!])

    Located BY HAND without ever compiling it.

    Still to-do:

    src/audio
    src/goddard

    Code:
    001050 001E3F main.o
    001E40 0031AF display.o
    0031B0 003C0F game.o
    003C10 0045AF sound_init.o
    0045B0 006E4F level_update.o
    006E50 00B76F interaction.o
    00B770 00FE1F mario.o
    00FE20 011C1F mario_step.o
    011C20 0189EF mario_actions_cutscene.o
    0189F0 01B4DF mario_actions_automatic.o
    01B4E0 01EA4F mario_actions_stationary.o
    01EA50 024ACF mario_actions_moving.o
    024AD0 02AB9F mario_actions_airbone.o
    02ABA0 02F93F mario_actions_submerged.o
    02F940 030C1F mario_actions_object.o
    030C20 030EFF level_geo.o
    030F00 03292F mario_misc.o
    032930 033BAF memory.o
    033BB0 03521F save_file.o
    035220 03610F area.o
    036110 038E2F rendering_graph_node.o
    038E30 039F2F profiler.o
    039F30 039FDF decompress()
    039FE0 056FEF camera.o
    056FF0 056FFF debug_course.o
    057000 0580FF object_list_processor.o
    058100 05FDAF object_helpers.o
    05FDB0 082F1F behavior_actions.o
    082F20 08345F platform_displacement.o
    083460 083CEF object_collision.o
    083CF0 08455F spawn_object.o
    084560 08488F spawn_sound.o
    084890 085ADF debug.o
    085AE0 08779F screen_transition.o
    0877A0 089ACF shadow.o
    089AD0 08A59F skybox.o
    08A5A0 08C72F moving_texture.o
    08C730 08CEDF geo_misc.o 
    08CEE0 09031F paintings.o
    090320 09143F print.o
    091440 097EDF ingame_menu.o
    097EE0 099E3F envfx_snow.o
    099E40 09C18F envfx_bubbles.o
    09C190 09CDDF macro_special_objects.o
    09CDE0 09DF3F hud.o
    09DF40 0B367F obj_behaviors.o
    0B3680 0CE91F obj_behaviors_2.o
    
    0F4210 0F6C2F math_util.o
    0F6C30 0F876F graph_node.o
    0F8770 0F9BAF geo_layout.o
    0F9BB0 0FC09F level_script.o
    0FC0A0 0FDE9F surface_collision.o
    0FDEA0 0FF57F surface_load.o
    0FF580 10199F behavior_script.o
    
    21D7D0 21DD9F level_select_menu.o
    21DDA0 21E9AF intro_geo.o
    21E9B0 224F6F file_select.o
    224F70 225D9F star_select.o
     
  9. CrashOveride

    CrashOveride Advanced Member

    Newcomer
    1
    May 29, 2017
    United States
    The decomp is officially released. I won't link it per forum rules, but it's very easy to find. I will disclose it is on a certain git site
     
    Last edited by CrashOveride, Aug 25, 2019
  10. uyjulian

    uyjulian Homebrewer

    Member
    9
    Nov 26, 2012
    United States
    United States
    Try "Nintendo 64 Decompilation Projects"


    ...going right on my Git mirror.
     
  11. FAST6191

    FAST6191 Techromancer

    pip Reporter
    24
    Nov 21, 2005
    United Kingdom
    Did a little compare between a handful of bigger and more important looking files (I opened both zips and chucked choice files on separate screens so I could look back and forth). No dates in the leaked version and github says all today which means we will have to have some fun with proper tools.

    In some cases the github version is a bit cleaner formatting, other cases there are some curious choices like having parts of tables/arrays on new lines (I don't much care about the tabs vs spaces debate). The original did not especially lack here though.

    Not seeing much in the way of new/better function names, comments and what have you -- some of the sounds might be better named but it was not particularly opaque before or anything. mario_step.c has some more comments I guess, though they are mostly concerned with the unknown leftover code that might well have been dealing with the Mario 64 beta's trampoline. paintings.c was quite a bit different.
    The leaked version for mario_action_airborne has #if VERSION_US around the place where the github version opts for #ifndef VERSION_JP which might well confuse some simpler source management tools. Be sure what you versions you are all using if doing a collaborative effort (I would suggest the github)
     
  12. CrashOveride

    CrashOveride Advanced Member

    Newcomer
    1
    May 29, 2017
    United States
    >No dates in the leaked version and github says all today

    Most likely to hide contributors against ninty
     
  13. CrashOveride

    CrashOveride Advanced Member

    Newcomer
    1
    May 29, 2017
    United States
    @Ecchi95 We created an unofficial decompilation server. We'd love to have you come on and talk about your upcoming projects: https://discord.gg/27JtCWs That compiler would be very useful for windows users
     
    The_Free_Real_Estate likes this.
  14. Ecchi95
    OP

    Ecchi95 Advanced Member

    Newcomer
    3
    Jul 7, 2019
    United States
    I don't use Discord except for sex servers.

    I'm making a new thread about my projects next month.
     
  15. Onceset

    Onceset Newbie

    Newcomer
    1
    Aug 24, 2019
    United Kingdom
    Is it possible to download this code?
     
  16. CrashOveride

    CrashOveride Advanced Member

    Newcomer
    1
    May 29, 2017
    United States
  17. Ecchi95
    OP

    Ecchi95 Advanced Member

    Newcomer
    3
    Jul 7, 2019
    United States
    I'm still making that new thread about reverse-engineering multiple Nintendo 64 games before October, so you know.
     
Quick Reply
Draft saved Draft deleted
Loading...