Jump to content
Atari8bitCarts

decompilers/code reading/development

Recommended Posts

I'm not familar with a lot of the tools, etc of the 80's but was hoping that it was like today's development. Are there any tools so that I can review code that is on cartridge? I want to learn from some of these games, as I start learning about game development. I've heard of a lot of individuals "porting" games, so I would think that wouldn't be from scratch.

 

Also, should I use the tools of the day or are there better tools that make this much easier (as with everything else). Tools to code, test, then to move over to cartridge, etc. I'm working in a Windows environment, not Apple or Linux.

 

I'm interested in Assembly and Action, and I have the languages, books, manuals , etc. But I learn by example faster. :) Thanx.

Edited by chrislynn5

Share this post


Link to post
Share on other sites

Looking at the game code in carts might not be the best place to start. There are plenty of programmers tricks used in games which will be hard to understand if you aren't familiar both with the machine and assembly language.

 

The best thing to do in my opinion would be to set your own small project goals and work your way up to a more complex game. That way you don't get disheartened if things don't end up the way you planned when you first set out.

  • Like 1

Share this post


Link to post
Share on other sites

IDA Pro (Interactive DisAssembler) is the quickest way to turn a binary into (almost) usable source.

It's a Windows application and can do disassemblies on all sorts from old Z-80 up to current Risc and x86 processor modules.

It's not all automatic though, it usually disassembles a good part of a file but then you have to jump in and manually point it to where code sections exist. But I've created source files in under 30 minutes for at least 2 sizable programs using it.

 

I imagine it's probably a little expensive, I got a "free" version.

 

These days I do practically everything from the PC. Although if I want to do certain things like convert a BMP file to something that can be a character set I just whip up a Basic program and run it turbo in an emulator.

 

State of the art for development would have to be Jac's WUDSN environment for Eclipse IDE. If you're starting fresh then you may as well go for that.

 

MADS is the "in" assembler although some use others like AtAsm, Xasm, CC65/CA65 and even the Nes assembler.

 

For run/debug, Altirra beats all hands-down. A bug that can take days on real hardware or hours in other emulators can sometimes be tracked down in minutes with it. Although you have to learn the workings, get used to how it all fits together and of course know the target hardware to begin with (ie the Atari).

 

 

Real machine - essentially you could develop a game from scratch to release without turning one on, but it's good to do "TQA" sessions periodically.

  • Like 2

Share this post


Link to post
Share on other sites

Re looking at workings of existing programs - there's plenty of games/demos where the source code is available. Both for modern day and 80s releases.

Share this post


Link to post
Share on other sites

IDA Pro (Interactive DisAssembler) is the quickest way to turn a binary into (almost) usable source.

It's a Windows application and can do disassemblies on all sorts from old Z-80 up to current Risc and x86 processor modules.

It's not all automatic though, it usually disassembles a good part of a file but then you have to jump in and manually point it to where code sections exist. But I've created source files in under 30 minutes for at least 2 sizable programs using it.

 

I imagine it's probably a little expensive, I got a "free" version.

Never heard of it, but I'll check it out.

 

DIS6502 is a free interactive disassembler that's specifically geared toward the 8-bit Atari. I even use it for disassembling Atari 2600 ROMs.

Share this post


Link to post
Share on other sites

Are there any dissasemblers that will run on the 130XE? What practically could be achieved? Could a small game e.g. Banana be disassembled to a file?

Share this post


Link to post
Share on other sites

IDA Pro (Interactive DisAssembler) is the quickest way to turn a binary into (almost) usable source.

It's a Windows application and can do disassemblies on all sorts from old Z-80 up to current Risc and x86 processor modules.

It's not all automatic though, it usually disassembles a good part of a file but then you have to jump in and manually point it to where code sections exist. But I've created source files in under 30 minutes for at least 2 sizable programs using it.

...

That sounds like a disassembler I used to use on the Amiga (ReSource?).

It made disassembling programs back to a usable source much easier.

Share this post


Link to post
Share on other sites

For Gridrunner, Metagallactic Llamas ports I used DIS6502. not bad but little bit tricky with its not scalable windows esp. on modern HD screens and me getting old (over 40s ;)) with the tiny font :D

 

Rybags... so I am not the only one who writes small tools in Basic/turbo basic xl nativly and runs them in Warp-mode in emulators ;)

Share this post


Link to post
Share on other sites

Rybags... so I am not the only one who writes small tools in Basic/turbo basic xl nativly and runs them in Warp-mode in emulators ;)

That's the ONLY kind of A8 programming that I do... except I write them in Atari Basic and compile them with MMG.

Share this post


Link to post
Share on other sites

IDA Pro (Interactive DisAssembler) is the quickest way to turn a binary into (almost) usable source.

It's a Windows application and can do disassemblies on all sorts from old Z-80 up to current Risc and x86 processor modules.

It's not all automatic though, it usually disassembles a good part of a file but then you have to jump in and manually point it to where code sections exist. But I've created source files in under 30 minutes for at least 2 sizable programs using it.

 

I imagine it's probably a little expensive, I got a "free" version.

...

Licenses START at $539 USD, 419 EUR.

Share this post


Link to post
Share on other sites

I'd rather prefer real free tools (DIS6502 is very cool, I have used it to fully convert Amaurote code into an asm listing with full success) if they are available, not "free" tools. I barely use "free" tools - only if I'm in a hurry but I do not recommend them to myself.

I have stopped using Pho***shop, Ill****rator, MS*ffice years ago. Believe, nowadays one cal live without them :)

 

So I recommend DIS6502. Its rough only for the first time; well, it works fine under wine - ideal for linux and MacOSX users.

Share this post


Link to post
Share on other sites

What's missing in these tools is the ability to identify and relocate z-page pointers.

 

Part of the problem is that often locations have multi use and might be general use as well as part of a pointer. What could help there is a dedicated editor which flags references and leaves it to the user to decide if a given use is for pointer or otherwise.

Share this post


Link to post
Share on other sites

Hello ATARI friends,

 

Please is there a walkthrough or tutor movie how to use IDA PRO 6.0 (6.2) with atari exe,com,bin file (or atr etc...) or script files that we can use for ida.

Or is there someone can make dis6502 from Eric Bacher latest version was is 2.2 some years ago please is there someone who has abilty to make a new version update correct some error's i do like that program :).

 

 

 

Greeting Marco.

Edited by marcokitt2000

Share this post


Link to post
Share on other sites

No IDA walkthru for 6502 that I know of. I imagine if there's any online help like that even if for Intel or other CPUs it could be of some help for other types.

 

I doubt it'll handle Atari exe files, AFAIK nobody else uses the same data structure. I generally feed it raw data dumps, or simple single-part executables with short headers.

 

You can instruct it to skip X bytes in the case of file headers and give it a start/end address.

Share this post


Link to post
Share on other sites

I worked on the current version of Dis6502 with Eric Bacher. If you want to PM me specific update requests, I can take a look and see how doable they are.

 

Relatedly, has anyone heard from Eric in the last few years? He went incommunicado some years back, and I've feared the worst...

Share this post


Link to post
Share on other sites

I use Dis6502 frequently with every project that I work on, it's invaluable to me as a tool. IDA Pro is excellent when you're working on a larger more involved dissasembly such as a full game.

I'll send a pm now with a couple of requests for some minor additions and a bug fix.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...