CA - Crossassembler 1.0 Introduction The crossassemblers CAxx uses the full functionality of MACRO 11 in both operating systems RT11 and RSX11-M. This means, that things like conditional assembling, program sections or the macro feature is possible in the microproccessors assem- bly language. Since the output is object format it is possible to use all the functionality of the Linker or Task Builder. Of course there a some restriction. PDP 11 maschines doesn't like Hex numbers. MACRO 11 doesn't accept them and it is not able to produce a listing with hexadecimal addresses. Second, since all mnemonics are realized with macros, the assem- bly process is a little slow. Crossassembler currently realized are: CA68 - for 6800 CA85 - for 8080/8085 2.0 Assembly process The following two lines are neccessary to let the MACRO 11 as- sembler know about the microprocessors mnemonics: .MCALL .OPxx .OPxx where xx stands for the microproccessor type (e.g. .OP85 for 8080/85). In the assembler command line include the macro library OPxx : DCL: MACRO progname+OPxx/lib+.... MCR: MAC progname,listname=OPxx/ML,progname The macro library can be build: DCL: LIBR/MAC OPxx CAxx MCR: LBR OPxx/CR:::128./DF:MAC=CAxx CA - Crossassembler PAGE 2 3.0 Linking/Task Building 3.1 RT11 Create a loadable image. Use the /BOTTOM option for the load address: LINK/NOBIT/BOT:nnnnnn progname,.... Use the program SAVBIN for extracting the code from the .SAV file. For example if you specify /BOT:6000 your code starts at block 6 in the .SAV file: RUN SAVBIN outfile[.DAT]=infile[.SAV] Start address (octal): 6000 Now you have a binary image. The program SAVBIN can be built as follows: MAC SAVBIN+IOCM/LIB LINK SAVBIN,IOCO 3.2 RSX11-M Create a task build command file 'prognameBLD.CMD': progname/-HD/-MM,progname=progname,..... / STACK=0 PAR=GEN:loadaddr:size / and build the task: TKB @prognameBLD where 'size' may be greater than the real size. Use the task TSKCO (task conversion) for extracting the code from the .TSK file: RUN TSKCO Enter task image file name [S] : progname[.TSK] Output: binary (B) or formatted (F) [S] : B Enter output file name [S] : progname[.DAT] The extension .TSK is default and may be omitted. The default for the output file extension is .DAT. If no output file is specified and the output is formatted, the output device is the terminal (TI:). Formatted output is in Hex either in dump for- CA - Crossassembler PAGE 3 mat or in INTEL hex format (one hex byte per line). The task TSKCO can be built as follows: FOR TSKCO=TSKCO FOR ASK=ASK TKB @TSKCOBLD Of course, the program may also be compiled with FORTRAN IV PLUS. 4.0 Test programs A 8085 test program TEST.MAC is included in the distribution kit. It has no funktion and is only for demonstration. It calls one subroutine SUBR which is in SUBR.MAC. For both RT11 and RSX11-M type: @TEST