ihaveamac / ninfs

FUSE filesystem Python scripts for Nintendo console files
MIT License
436 stars 18 forks source link

Cannot mount Super Mario Land (E3) demo #66

Closed LolHacksRule closed 3 years ago

LolHacksRule commented 4 years ago

When I try to mount Super Mario Land's E3 demo as a encrypted 3DS file (MD5: 84A9F42A8AD6C2C7092CDBC7306047EB), I always get this error.

Traceback (most recent call last): File "ninfs\pyctr\types\exefs.py", line 209, in init UnicodeDecodeError: 'ascii' codec can't decode byte 0xaf in position 1: ordinal not in range(128)

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "ninfs_pyi_main.py", line 31, in File "ninfs\main.py", line 80, in mount File "ninfs\mount\cci.py", line 140, in main File "ninfs\pyctr\types\cci.py", line 121, in init File "ninfs\pyctr\types\ncch.py", line 251, in init File "ninfs\pyctr\types\ncch.py", line 289, in load_sections File "ninfs\pyctr\types\exefs.py", line 211, in init pyctr.types.exefs.ExeFSNameError: could not decode from ascii: b'\x1d\xaf\}s\xdf\xf6\x05' [10832] Failed to execute script _pyi_main

Any plans to fix? I'm not linking the ROM image here to prevent piracy. ctrtool extracts it completely fine.

ihaveamac commented 4 years ago

Is it zero-key encrypted? I forgot to add support for this to pyctr.

LolHacksRule commented 4 years ago

I think so, could be wrong

ihaveamac commented 4 years ago

pyctr now supports fixed crypto key: https://github.com/ihaveamac/pyctr/commit/1bf6355cdc236b6f0f0068bb995e41fa8be2ce15 and https://github.com/ihaveamac/pyctr/commit/f04bc5a09b448605b7c69a7cffec54540b80c0d8 ninfs will be updated eventually, once a new release of this is made.

ihaveamac commented 3 years ago

This is in the newest alpha releases.