uvmac/docs/extras/fdisasm/a/index.html

1 line
7.1 KiB
HTML
Raw Permalink Normal View History

2020-03-14 19:28:01 +00:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title> FDisasm (Alpha) </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="canonical" href="index.html"> </head> <body> <div> <i> <a href="https://www.gryphel.com/index.html">www.gryphel.com</a>/c/<a href="../../../index.html">minivmac</a>/<a href="../../index.html">extras</a>/<a href="../index.html">fdisasm</a>/a - <a href="https://www.gryphel.com/c/c/feedback.html">feedback</a> </i> </div> <hr> <h2 align=center> FDisasm (Alpha) </h2> <hr> <p> Download </p> <blockquote> <p> <a href="https://www.gryphel.com/d/minivmac/extras/fdisasm/a/fdisasm200105.zip">fdisasm200105.zip</a> (<a href="https://www.gryphel.com/d/minivmac/extras/fdisasm/a/fdisasm200105.inf.txt">info</a>) a zipped hfs disk image and checksum file. The disk image can be mounted with Mini vMac. Includes source code. </p> <p> <a href="https://www.gryphel.com/d/minivmac/extras/fdisasm/a/fdplusv3-191208.zip">fdplusv3-191208.zip</a> (<a href="https://www.gryphel.com/d/minivmac/extras/fdisasm/a/fdplusv3-191208.inf.txt">info</a>) a disk image containing all the formatting information needed to disassemble a Macintosh Plus ROM image (version 3, final - checksum 4D1F8172). </p> <p> <a href="roms.html">ROM Formatting Information</a> - more images to disassemble other Macintosh ROMs. </p> </blockquote> <p> FDisasm is a formatting disassembler for Motorola 680x0 code. It makes it possible to distribute the means to create an annotated disassembly of copyrighted code (such as Macintosh ROM images), without distributing that code or files derived from it. </p> <p> To use FDisasm to disassemble the Macintosh Plus ROM, launch Mini vMac and boot from a disk image containing a system folder. Mount the fdplusv3-191208 disk image, and import a copy of the Macintosh Plus ROM onto it. (Such as by using <a href="../../importfl/index.html">ImportFl</a>.) Mount the fdisasm200105 disk image, copy the FDisasm application to the fdplus disk image, and then eject the fdisasm image. Rename the ROM image to &ldquo;bin&rdquo;, and then launch the FDisasm application. The program displays a progress indicator, and quits when it is finished. (It could take five minutes at 1x speed, so set speed to &ldquo;all out&rdquo;. At &ldquo;all out&rdquo; speed it takes under 10 seconds to finish on my Mac Mini.) When the program finishes, the output is in a file named &ldquo;listing&rdquo;. </p> <p> This listing file is over 2 megabytes. The program MPW Shell 3.2.3 works in Mini vMac and can work with such large text files. But probably almost nobody else has an old copy of MPW. (The final version of MPW still available for free download requires a Mac II or later.) Instead you can export the listing file to the host computer (such as by using <a href="../../exportfl/index.html">ExportFl</a>), and find some program there that can view it. (For OS X, TextWrangler would work, for example.) </p> <p> <b>Warning</b> : Not enough people are paying enough attention to FDisasm (especially me) for it to be relied upon. If you notice something odd in the output, double check it, and if it is wrong, please report it to <a href="https://www.gryphel.com/c/feedback.html">me</a>. </p> <p> This listing file is derived (in terms of copyright law) from the Macintosh Plus ROM, and so may not be redistributed. </p> <p> To disassemble the Macintosh 128/512 ROM, follow the above instructions, except use the fdmac128-0.3.0 disk image, and of course use a ROM image from a Macintosh 128 or 512. And similarly for the Macintosh SE, Macintosh II, and PowerBook 100 ROMs. </p> <p> Here are some details about the formatting information files used by FDisasm: </p> <p> The only file required by FDisasm is &ldquo;bin&rdquo;. But if this is all it finds, it will just create a hexadecimal dump of the file. To disassemble code, it needs to know where the code is. It looks for a file named &ldquo;bin_map&rdquo; for this information