DSPLIB Web Site - DASM1600

DASM1600 - An Intellivision Disassembler

dasm1600.zip (binary, source, and doc files for DOS)

This is my second working version of a CP1600 disassembler. I wrote it to allow be to take a look at the code inside the Intellivision.

from dasm1600.txt...

DASM1600.exe v0.3 - by Frank Palazzolo

v0.3 Changes

- Added by J. Zbiciak
 -- Report R4 .. R7 instead of R0 .. R3 for JSRx insns.
 -- Properly handle SDBD followed by imm. mode insn.
 -- Add missing MAYBE_2 calls to RRC, SARC.
 -- Fix mnemonic:  SUBT -> SUBI
 -- Fix coredump problems w/ .org:  "scanf("%d", &short_var)" is
    technically illegal.
 -- Fixed JSR instruction decoding bug

v0.2 Changes

- Many instructions fixed
- Reversed byte order.  Now defaults to high byte, low byte.
- Fixed a bug with the org statement.  Now defaults to $0000

v0.1 initial release

Release Notes:

This was my first crude attempt at a CP1600/CP1610 disassembler.
Several of us have been using it now with no problems, but if
you find something wrong, please let me know.

Usage: dasm1600 infile 

You can redirect the output to a file to capture it.

The symbol file has only three commands, and must be in lower case:

org  XXXX         <-- This sets the origin:
data XXXX         <-- This defines a word as data
revbytes          <-- This reverses the byte order convention of the binary

..where XXXX is the hex representation of the desired address

Because the CP1600 uses 10-bit instructions, the byte order of the binary
file is important.  This program defaults to the high byte, low byte format.

Use the revbytes command to reverse the sense.

This program was compiled with DJGPP for DOS.  It has also been compiled on
Win95 under VC++6.0, as a Windows console mode program.

Hope it's useful for you!

Frank Palazzolo