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.
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 firstname.lastname@example.org