Short: Signetics 8X300/8X305 cross-disassembler Uploader: amigansoftware@gmail.com (James Jacobs) Author: amigansoftware@gmail.com (James Jacobs) Type: util/cli Version: 1.0 Requires: Windows 95+ Architecture: x86-windows >= 4.0.0 This is a cross-disassembler for the Signetics 8X305 CPU. As the 8X300 uses a subset of the 8X305 commands, it can also be used to disassemble 8X300 programs. Commands which are meaningful to the optional 8X310 interrupt handler chip are also disassembled. Note that these chips have nothing to do with the Signetics 2650/2636/ 2637 chips. All platforms emulated by the AmiArcadia and WinArcadia emulators are based on the 2650, not the 8X30x. Therefore, this cross- disassembler is useless for those platforms. The output is intended for (cross-)assembly with the "AS Macro Assembler" (DOS, OS/2, Windows, Linux), available from: http://john.ccac.rwth-aachen.de:8000/as/ The version of AS tested against was 1.42 beta (build 72). It is also mostly compatible with the official Signetics MCCAP cross- assembler system, but this is unavailable for testing. Note that AS has the following differences from MCCAP regarding the XEC command: * AS expects eg.: XEC $12(LIV3),4 MCCAP expects eg.: XEC $12(LIV3,4) * AS expects only the relevant 5 or 8 lower bits of the address. MCCAP expects the full address. Obviously, assembler directives such as CALL, LIV, RIV, SEL and RTN are not generated, only their component opcodes. However, HALT, NOP, XML and XMR are generated where appropriate. Each instruction is 16 bits in length. Therefore, addresses are shown as 16-bit words, as is the convention for this CPU. Programs can be up to 8192 words (ie. 16384 bytes) in length. An origin of 0 is assumed; you can of course pad the start of the binary if you need a different origin. Usage is: 8X305Dis [-l] where is the raw binary file to be disassembled. The default is to expect each word in big-endian format. You can use the -l option (-L is also accepted) to make it expect each word in little-endian format (eg. as emitted by the AS/P2BIN combination). This only affects the input binary, not any of the output. Output is to the console; you will normally want to redirect this a file. For example: 8X305Dis tad16.bin >tad16.asm Full Visual C/C++ 5.0 source code is included. It should be easy to port to other platforms (eg. AmigaOS). Some example binaries (in big-endian format) and their corresponding disassemblies are included. Also, the original source code of one of the examples is included. URLs: http://amigan.1emu.net/releases/ http://amigan.yatho.com/ http://john.ccac.rwth-aachen.de:8000/as/ EMail: amigansoftware@gmail.com V1.0: Sunday 14 February 2010.