Code Monkey home page Code Monkey logo

6502's Introduction

6502 Architecture Plugin (v2.0.1)

Author: Vector 35 Inc

An architecture plugin for 6502 and binary view for NES roms.

Description:

An architecture plugin for the 6502 processsor and a binary view for NES roms.

Installation Instructions

Darwin

no special instructions, package manager is recommended

Linux

no special instructions, package manager is recommended

Windows

no special instructions, package manager is recommended

Minimum Version

This plugin requires the following minimum version of Binary Ninja:

  • 1200

Required Dependencies

The following dependencies are required for this plugin:

License

This plugin is released under a MIT license.

Metadata Version

2

6502's People

Contributors

bpotchik avatar d0ntpanic avatar kylemiles avatar lwerdna avatar plafosse avatar psifertex avatar squeedee avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

hydra45 squeedee

6502's Issues

Failed to load plugin: Vector35_6502

Failed to import python plugin: official/Vector35_6502: cannot import name 'range' from 'binaryninja' (/home/lxt/binaryninja/plugins/../python/binaryninja/__init__.py)
Failed to load plugin: Vector35_6502

bn_bug

C64 cart plugin does not work in recent binary ninjas

A plugin that used to work with (much) older BNs is spotty and produces heaps of backtraces in 4.1.5109-dev.

Trending towards user error in order of calling in the plugin or something, but I said in Slack there would be an issue, so here it is.

When I tried yesterday the cartridge dump didn't load at all and you ended up in raw view and there are a little over 100k lines of backtraces. When I tried today the backtraces are still there, but it loaded into a 6502 view with the plugins symbol creation all done. Doing the actions the plugin does manually in the console ends up with the correct result and no backtraces.

Example backtrace:
[0:140236877600128 Default info] Cart autoboot signature: CBM80 [16229809792511630840:12500298803194527301 BinaryView debug] Updating functions for uses of symbol at 0x8004 [0:12500298803194527301 Undo debug] Adding undo action without calling BeginUndoActions... This is suspicious. Action: Commented at 0x8004 [0:12500298803194527301 Undo debug] UNDO: Add action Commented at 0x8004 to entry 930e1908-8e48-4f22-9451-9165e3bbffdf [0:12500298803194527301 Undo debug] UNDO: Commit 930e1908-8e48-4f22-9451-9165e3bbffdf [0:12500298803194527301 Undo debug] UNDO: Commit entry 930e1908-8e48-4f22-9451-9165e3bbffdf [0:140236877600128 Default info] cold reset vector: 0x8087 [0:140236877600128 Default info] warn reset vector: 0x8DE7 [16229809792511630840:12500298803194527301 BinaryView debug] Updating functions for uses of symbol at 0x8000 [16229809792511630840:12500298803194527301 BinaryView debug] Updating functions for uses of symbol at 0x8002 [16229809792511630840:12500298803194527301 BinaryView debug] Updating functions for uses of symbol at 0x8087 [0:12500298803194527301 Undo debug] Adding undo action without calling BeginUndoActions... This is suspicious. Action: Created function at 0x8087 for platform 6502 [0:12500298803194527301 Undo debug] UNDO: Add action Created function at 0x8087 for platform 6502 to entry cc9b0f2c-99c3-4299-9209-27a1a7e992bb [0:12500298803194527301 Undo debug] UNDO: Commit cc9b0f2c-99c3-4299-9209-27a1a7e992bb [0:12500298803194527301 Undo debug] UNDO: Commit entry cc9b0f2c-99c3-4299-9209-27a1a7e992bb [16229809792511630840:12500298803194527301 Analysis debug] Added 6502 function at 0x8087 [16229809792511630840:12500298803194527301 Analysis debug] Starting analysis update [0:140236877600128 Default error] Traceback (most recent call last): File "/home/username/hack/binaryninja/plugins/../python/binaryninja/binaryview.py", line 3204, in _get_address_size return self.perform_get_address_size() File "/home/username/hack/binaryninja/plugins/../python/binaryninja/binaryview.py", line 3295, in perform_get_address_size raise NotImplementedError NotImplementedError [0:140236877600128 Default error] Traceback (most recent call last): File "/home/username/hack/binaryninja/plugins/../python/binaryninja/binaryview.py", line 3204, in _get_address_size return self.perform_get_address_size() File "/home/username/hack/binaryninja/plugins/../python/binaryninja/binaryview.py", line 3295, in perform_get_address_size raise NotImplementedError NotImplementedError [16229809792511630840:12500298803194527301 BinaryView debug] Updating functions for uses of symbol at 0xa000 [0:140236877600128 Default error] Traceback (most recent call last): File "/home/username/hack/binaryninja/plugins/../python/binaryninja/binaryview.py", line 3204, in _get_address_size ...

The plugin DD001-ROM.py and example ROM can be found in https://github.com/RevPanda/bn-c64
Tests where done using v1.1 of the ROM.

The temptation to clean up the code before committing it was resisted because this is the code that used to work without problems once upon a time. Excuse the many, many warts but feel free to point them out.

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.