summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/tms34010/dis34010.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/tms34010/dis34010.cpp')
-rw-r--r--src/devices/cpu/tms34010/dis34010.cpp115
1 files changed, 0 insertions, 115 deletions
diff --git a/src/devices/cpu/tms34010/dis34010.cpp b/src/devices/cpu/tms34010/dis34010.cpp
deleted file mode 100644
index 01aebd4a6f1..00000000000
--- a/src/devices/cpu/tms34010/dis34010.cpp
+++ /dev/null
@@ -1,115 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Zsolt Vasvari
-/* This program is based on DIS68k by Aaron Giles */
-
-#include "emu.h"
-
-static uint8_t *filebuf;
-static uint32_t offset;
-
-#define STANDALONE
-#include "34010dsm.c"
-
-
-static const char *const Options[]=
-{
- "begin","end","offset",0
-};
-
-static void usage (void)
-{
- printf ("Usage: DIS34010 [options] <filename>\n"
- "Available options are:\n"
- " -begin - Specify begin offset in file to disassemble in bits [0]\n"
- " -end - Specify end offset in file to disassemble in bits [none]\n"
- " -offset - Specify address to load program in bits [0]\n"
- "All values should be entered in hexadecimal\n");
- exit (1);
-}
-
-int main (int argc,char *argv[])
-{
- uint8_t i,j,n;
- char *filename=0,buf[80];
- FILE *f;
- uint32_t begin=0,end=(uint32_t)-1,filelen,len,pc;
- printf ("DIS34010\n"
- "Copyright Zsolt Vasvari/Aaron Giles\n");
-
- for (i=1,n=0;i<argc;++i)
- {
- if (argv[i][0]!='-')
- {
- switch (++n)
- {
- case 1: filename=argv[i]; break;
- default: usage();
- }
- }
- else
- {
- for (j=0;Options[j];++j)
- if (!strcmp(argv[i]+1,Options[j])) break;
-
- switch (j)
- {
- case 0: ++i; if (i>argc) usage();
- begin=strtoul(argv[i],0,16) >> 3;
- break;
- case 1: ++i; if (i>argc) usage();
- end=strtoul(argv[i],0,16) >> 3;
- break;
- case 2: ++i; if (i>argc) usage();
- offset=strtoul(argv[i],0,16) >> 3;
- break;
- default: usage();
- }
- }
- }
-
- if (!filename)
- {
- usage();
- return 1;
- }
- f=fopen (filename,"rb");
- if (!f)
- {
- printf ("Unable to open %s\n",filename);
- return 2;
- }
- fseek (f,0,SEEK_END);
- filelen=ftell (f);
- fseek (f,begin,SEEK_SET);
- len=(filelen>end)? (end-begin+1):(filelen-begin);
- filebuf=malloc(len+16);
- if (!filebuf)
- {
- printf ("Memory allocation error\n");
- fclose (f);
- return 3;
- }
- memset (filebuf,0,len+16);
- if (fread(filebuf,1,len,f)!=len)
- {
- printf ("Read error\n");
- fclose (f);
- free (filebuf);
- return 4;
- }
- fclose (f);
- pc=0;
- while (pc<len-1)
- {
- i=(Dasm34010 (buf,pc<<3))>>3;
-
- printf ("%08X: ",(pc+offset) << 3);
- for (j=0;j<i ;++j) printf("%02X ",filebuf[pc+j]);
- for ( ;j<10;++j) printf(" ");
- printf(buf);
- printf ("\n");
- pc+=i;
- }
- free (filebuf);
- return 0;
-}