Giter Club home page Giter Club logo

nes-disassembler's Introduction

6502d

  1. I don't know anything about Python. If it doesn't work, I won't know why.

  2. Works with Python 3 on Windows

  3. This can and WILL erase files, if they are named the same as your .nes file with extension .bin or .chr or .asm -Copy the .nes file in an EMPTY folder before attempting this. REALLY! I MEAN IT!

How to use

Run 6502d in a command prompt or terminal emulator, and type

    $ python3 6502d.py <path_to_nes_file>

If the file is a good .NES file, and the filesize matches the header, it should ask you... Default Program Bank size OK? Y/N -if type anything other than 'Y' or 'y' "1 = 8192, 2 = 16384, 4 = 32768:"

It really doesn't make much difference, except that you will generate more .asm files with a smaller Bank size, but they should all assemble the same.

It should generate a .bin file (=the PRG ROM minus the header, not needed for reassembly), a .chr file (if present), and 1 or more .asm file

Assemble with asm6 like this (using the test.nes)

asm6 test.asm test.nes

(that's it)

Troubleshooting

The very first .nes file I tested...Failed the filesize check. Whoever dumped the ROM, put about 64 bytes at the end of the file, a signature. You would have to open the ROM in a hex editor and delete that part to get it to function...or maybe edit the source code.

Also, if there is a signature in the header (DISKDUDE, etc), my program will not copy it, but remove it. The ROM will run the same, but its hash value will be different (for comparison / security). I also didn't implement any iNES 2.0 stuff...those bytes will be zero.

You may have to edit the .base directives in the main .asm file. Especially if you are editing the source in the file. Do NOT assume that my program has any idea about what address each bank should start with.

You may have to remove spaces from the .nes filename, before disassembling. The file would probably disassemble correctly, but, asm6 will give error messages for filenames with spaces in them.

I didn't use any illegal opcodes. Feel free to edit the source, if you want them in.

Feel free to use this, change the source code, etc. I'd appreciate if you credit me somewhere in the new version. Thanks. Dougeff.

nes-disassembler's People

Contributors

nesdoug avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.