Marius Posted February 22, 2012 Share Posted February 22, 2012 Hi For PC there is that brilliant DIS6502 program I found on Steve Tuckers site. But what I need (or better said: want...) to use is a Disassembler on XL/XE. The most important thing is that it outputs a Mac65 (or another assembler) compatible output to disk, including labels, so that the generated source can be edited and assembled again without any problems with an assembler. I know that PC program can do that, but since I don't have access to windows it is much more convenient for me to do this on the real thing. Besides a lack of windows: I have all my files on my XL/XE system. Thanks! M> Quote Link to comment Share on other sites More sharing options...
Rybags Posted February 22, 2012 Share Posted February 22, 2012 (edited) Not sure if one was ever made. I wrote one in Basic decades ago but it was effectively similar to AsmEd, with some enhancements such as arrows pointing out branch directions. But I never intended it for generating source. These days I use IDA Pro. I've taken 32K binary dumps and created source code that can be assembled in under 30 minutes. Most of the batch disassemblers, you have to keep running them trial/error with parameters to tell them what parts should be treated as data. With IDA, you just load in the file and it automatically starts to identify the program parts. Usually leaves lots of data areas, you just point the cursor and hit "C" it turns data to instructions and takes care of labels and cross-reference stuff. Edited February 22, 2012 by Rybags Quote Link to comment Share on other sites More sharing options...
Marius Posted February 22, 2012 Author Share Posted February 22, 2012 I found a program called "THE DISASSEMBLER" ... I found it on my Ultimate Utility Cartridge. It works great. Except for one bloody thing. It puts the label-equates at the bottom of the Mac/65 listing, which does not work very well (a lot of Phase errors). So I had to cut the labels, and put them on top of the listing. Now it works. Another 'not so handy' thing is that the labels better should have names like LD200 so I could see what the memory location of that label is. Unfortunately it uses labels from AA0 to ZZ9 ... but ok, it works very good. So it resulted in a working source for Mac/65. It also outputs for ATMAS II, but I don't have a manual of ATMAS II so I don't know how to use that assembler. Quote Link to comment Share on other sites More sharing options...
sup8pdct Posted February 22, 2012 Share Posted February 22, 2012 (edited) Here is one that I have used. dissem file on side A along with other stuff, source for program on side B. It creates a listing that can be loaded into mac65 with add line number option (from memory) James DISK226B.ATR DISK226A.atr Edited February 22, 2012 by sup8pdct Quote Link to comment Share on other sites More sharing options...
Fox-1 / mnx Posted February 22, 2012 Share Posted February 22, 2012 The "Wosfilm" disassembler. Tried many others of which I forgot their names but once I bought this one I never looked back. It's a commercial product and the original disk has a copy protection. No idea how or where to get it these days but I guess it's out there somewhere like (almost) any other title. 1 Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted February 24, 2012 Share Posted February 24, 2012 The "Wosfilm" disassembler. Tried many others of which I forgot their names but once I bought this one I never looked back. It's a commercial product and the original disk has a copy protection. No idea how or where to get it these days but I guess it's out there somewhere like (almost) any other title. I can confirm version 1.1 is 'out there', cracked by Mr Barcardi.. Quote Link to comment Share on other sites More sharing options...
atari8warez Posted March 11, 2012 Share Posted March 11, 2012 (edited) The "Wosfilm" disassembler. Tried many others of which I forgot their names but once I bought this one I never looked back. It's a commercial product and the original disk has a copy protection. No idea how or where to get it these days but I guess it's out there somewhere like (almost) any other title. I am not sure if this would infringe on anyone's copyright but here it is. Disassembler, The v1.1 (1991)(WosFilm)cr Mr. Bacardi.zip Edited March 11, 2012 by atari8warez Quote Link to comment Share on other sites More sharing options...
+therealbountybob Posted August 26, 2015 Share Posted August 26, 2015 (edited) Please can someone patch the "Wosfilm Disassembler" (file on above post) so it will work on 2 drives. It has a D1: prompt when selecting files but you cannot change it. I'm using 1050 drives. The problem is the single drive limit means your source and destination files have to be on the same disk which doesn't always have room to create the output file. If you try disassemble by sector instead of by file, to split the file, it doesn't allow your output to be on the same disk as the source!!! I'll try and split the source file first using a sector editor, but would be great if this can be fixed for 2 drives Edited August 28, 2015 by therealbountybob Quote Link to comment Share on other sites More sharing options...
1050 Posted August 27, 2015 Share Posted August 27, 2015 (edited) Disassembler, The v1.1- (1991)(WosFilm)cr Mr. Bacardi.zip This one was too easy, one stinking byte and it appears to offer the world. A 02 for a 04 for the left margin in one spot gets you X source and Z destination while you run it from a third as I did. Standard disclaimer applies - I wasn't even here. I put a hyphen in the name so it's differently named from the one above, enjoy. Decided I could show my work for not much extra, look for the prompt and find the left margin setting just above it. This using Dis6502, you should only have to load this workspace file. wolf.zip Edited August 27, 2015 by 1050 2 Quote Link to comment Share on other sites More sharing options...
Wrathchild Posted August 27, 2015 Share Posted August 27, 2015 (edited) Certainly worth trying IDA Disassembler (DOS freeware version). Although it has the old-style windowing system it still does a good job (and convinced me in 1999 to buy the Pro version). Shame they dropped 6502 from the newer 'free' windows versions. EDIT: Hmm, the install.exe isn't being allowed to run on Windows 10 - but happy under DosBox Edited August 27, 2015 by Wrathchild Quote Link to comment Share on other sites More sharing options...
fujidude Posted August 27, 2015 Share Posted August 27, 2015 EDIT: Hmm, the install.exe isn't being allowed to run on Windows 10 - but happy under DosBox I'm guessing your Windows 10 is 64-bit. Any 64 -bit version of Windows will not run 16-bit software. DOS software is 16-bit. As you say, DOS Box should help you out. Another option is FreeDOS (or even MS DOS) installed on a VM. Quote Link to comment Share on other sites More sharing options...
+therealbountybob Posted September 2, 2015 Share Posted September 2, 2015 Thanks 1050, very much appreciated The WosFilm disassembler now works great on multiple drives (I guess someone made it single drive for their convenience). I have been tinkering and used the disassemble by sector to split an XEX file into various MAC/65 files. I had a print out of the code so could see some logical points to split the file: blocks of code / data. Seems MAC/65 doesn't like anything too large so I need to split some further. My aim is to take a well known game, tweak it and then re-assemble it. All on real hardware (with a little help from APE). The next challenge is how to get a block of data bytes into a format that I can use, ideally to be INCLUDEd in the assembler. The problem is MAC/65 file thinks it is code, where as I want the data as .BYTE statements etc. I could search and replace each command e.g. replace BRK with .BYTE $00 but I would have issues with STA commands etc depending on the mode they are used in: STA $nnn,Y = $99, where as STA $nnnn = $8D - plus this would be a right pain as the files are large. Suggestions please Quote Link to comment Share on other sites More sharing options...
1050 Posted September 2, 2015 Share Posted September 2, 2015 Eventually everyone notices that same weakness with MAC/65 and they write more better assemblers that allow to include data files - end of problem. And you are very welcome, I'm glad I actually could pull it off. You might consider using BASIC to make a block of .BYTE file with instead of the disassembler as there is where the actual problem is (disassembly). MAC/65 should accept a block of .BYTE just as easily as the regular stuff. Making that block is the issue. MAC/65 will accept text files as a source and then you can save it in the tokenized form for disk space and speed when assembling. Some disassemblers can do this trick where you tell it from here to there is block mode, most do not. Because references to various parts within that block are very likely to exist and MAC/65 will still need those to be inserted as labels in order to assemble good code outside the block we have real issues right away with block disassembly. Which is the main reason none of this gets done very often. Very real programmer's dilemma has no easy solution that I'm aware of - I've never gone there though, so I'm just kicking ideas around here. Dis6502 could be used to force a block into .BYTEs for you? Others will have better suggestions I hope. It also kinda all depends on what exactly what you mean by 'real hardware' too. 1 Quote Link to comment Share on other sites More sharing options...
+therealbountybob Posted September 3, 2015 Share Posted September 3, 2015 by real hardware I plan to continue using the 130XE and Atari based software I'm betting there is at least one Atari utility to export a block of bytes (from a range of secrors) and probably something designed for use with MAC/65 might exist if I'm lucky. I guess I can create something in BASIC like you say, but I'll have a trawl through the utilites archives. Interesting that when you disassemble (using WosFilm) by sector it still puts in the correct branch addresses to other parts of the file - I wasn't expecting this to be the case but I suppose they are all hard coded thinking about it. I'm still experimenting - and having fun Quote Link to comment Share on other sites More sharing options...
ricortes Posted September 3, 2015 Share Posted September 3, 2015 You may want to give a quick look at "The Antic Disassembler" http://www.atarimagazines.com/v7n7/AnticDisassembler.html I didn't work with it a lot, maybe just long enough to verify it worked. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.