PrintLogo

Compiling D52




D52 is available here. We wrote about D51 in this article. We put a copy of d52v33beta.zip up here. Here is how to compile D52 on a GNU/Linux system:

usr-1@wrk-1 d5 $ ls
d52v33beta.zip
usr-1@wrk-1 d5 $ unzip *.zip
Archive:  d52v33beta.zip
creating: d52v33beta/
inflating: d52v33beta/analyze.c
inflating: d52v33beta/analyze.h    
inflating: d52v33beta/common.c     
inflating: d52v33beta/common.h     
inflating: d52v33beta/d48.c        
inflating: d52v33beta/d48.ctl      
inflating: d52v33beta/d48.h        
inflating: d52v33beta/d48pass.c    
inflating: d52v33beta/d48pass.h    
inflating: d52v33beta/d48table.c   
inflating: d52v33beta/d48table.h   
inflating: d52v33beta/d52.c        
inflating: d52v33beta/d52.ctl      
inflating: d52v33beta/d52.h        
inflating: d52v33beta/d52manual.html  
inflating: d52v33beta/d52pass1.c   
inflating: d52v33beta/d52pass1.h   
inflating: d52v33beta/d52pass2.c   
inflating: d52v33beta/d52pass2.h   
inflating: d52v33beta/d52table.c   
inflating: d52v33beta/d52table.h   
inflating: d52v33beta/defs.h       
inflating: d52v33beta/dispass0.c   
inflating: d52v33beta/dispass3.c   
inflating: d52v33beta/dz80.c       
inflating: d52v33beta/dz80.ctl     
inflating: d52v33beta/dz80.h       
inflating: d52v33beta/dz80pass1.c  
inflating: d52v33beta/dz80pass1.h  
inflating: d52v33beta/dz80pass2.c  
inflating: d52v33beta/dz80pass2.h  
inflating: d52v33beta/dz80table.c  
inflating: d52v33beta/dz80table.h  
inflating: d52v33beta/keil.ctl     
inflating: d52v33beta/Makefile     
creating: d52v33beta/obj/
inflating: d52v33beta/README       
usr-1@wrk-1 d5 $ ls
d52v33beta  d52v33beta.zip
usr-1@wrk-1 d5 $ cd d*
usr-1@wrk-1 d52v33beta $ ls
Makefile   d48.ctl     d52.ctl         d52table.c  dz80.h       keil.ctl
README     d48.h       d52.h           d52table.h  dz80pass1.c  obj
analyze.c  d48pass.c   d52manual.html  defs.h      dz80pass1.h
analyze.h  d48pass.h   d52pass1.c      dispass0.c  dz80pass2.c
common.c   d48table.c  d52pass1.h      dispass3.c  dz80pass2.h
common.h   d48table.h  d52pass2.c      dz80.c      dz80table.c
d48.c      d52.c       d52pass2.h      dz80.ctl    dz80table.h
usr-1@wrk-1 d52v33beta $ make
gcc -Wall -O2 -c d52.c -o obj/d52.o
gcc -Wall -O2 -c common.c -o obj/common.o
gcc -Wall -O2 -c d52pass1.c -o obj/d52pass1.o
gcc -Wall -O2 -c d52pass2.c -o obj/d52pass2.o
gcc -Wall -O2 -c d52table.c -o obj/d52table.o
gcc -Wall -O2 -c analyze.c -o obj/analyze.o
gcc -Wall -O2 ./obj/d52.o ./obj/common.o ./obj/d52pass1.o 
./obj/d52pass2.o ./obj                                
/d52table.o ./obj/analyze.o -o d52 
strip d52
gcc -Wall -O2 -c d48.c -o obj/d48.o
gcc -Wall -O2 -c d48pass.c -o obj/d48pass.o
gcc -Wall -O2 -c d48table.c -o obj/d48table.o
gcc -Wall -O2 ./obj/d48.o ./obj/common.o ./obj/d48pass.o 
./obj/d48table.o -o d48                                
strip d48
gcc -Wall -O2 -c dz80.c -o obj/dz80.o
gcc -Wall -O2 -c dz80pass1.c -o obj/dz80pass1.o
gcc -Wall -O2 -c dz80pass2.c -o obj/dz80pass2.o
gcc -Wall -O2 -c dz80table.c -o obj/dz80table.o
gcc -Wall -O2 ./obj/dz80.o ./obj/common.o ./obj/dz80pass1.o 
./obj/dz80pass2.o ./                                
obj/dz80table.o -o dz80 
strip dz80
usr-1@wrk-1 d52v33beta $

Let's take it for a spin:

usr-1@wrk-1 d52v33beta $ ./d48 mem
D48 8048/8041 Disassembler V 3.3
Copyright (C) 1996-2004 by J. L. Post
Released under the GNU General Public License
Initializing program spaces...
reading mem.bin
Highest location = 07ff
No control file found
Pass 1 - Reference search complete
Pass 2 - Source generation complete
Pass 3 - Equate generation complete
Done
usr-1@wrk-1 d52v33beta $
usr-1@wrk-1 d52v33beta $ head mem.d48 -n 20
;
;  8048 Disassembly of mem.bin
;  04/10/04 5:55
;
org     0
;
jmp     X00d0
;
org     4
;
X0004:  mov     a,#9
cpl     a
add     a,r7
cpl     a
jnz     X000d
call    X0124
X000d:  mov     a,#8
cpl     a
add     a,r7
cpl     a
usr-1@wrk-1 d52v33beta $ 





This article comes from Coprolite:
http://coprolite.com/

The URL for this story is:
http://coprolite.com/art32.html

Copyright 1997-2006 Coprolite.com. Read our Terms of Use.