mirror of
https://github.com/RevCurtisP/C02.git
synced 2025-02-16 14:30:33 +00:00
37 lines
861 B
C
37 lines
861 B
C
/*************************************
|
|
* C02 Assembly Language Routines *
|
|
*************************************/
|
|
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <ctype.h>
|
|
#include <string.h>
|
|
#include <errno.h>
|
|
|
|
#include "common.h"
|
|
#include "files.h"
|
|
#include "asm.h"
|
|
|
|
/* Process comment */
|
|
void prccmt(void) {
|
|
if (strlen(cmtasm)) { strcpy(asmcmt, ";"); strcat(asmcmt, cmtasm); }
|
|
else asmcmt[0] = 0;
|
|
setcmt("");
|
|
}
|
|
|
|
/* output a single line of assembly code */
|
|
void asmlin(char *opcode, char *oprnd) {
|
|
if (strlen(lblasm)) strcat(lblasm, LABSFX);
|
|
prccmt();
|
|
fprintf(outfil, ASMFMT, lblasm, opcode, oprnd, asmcmt);
|
|
if (debug) printf(ASMFMT, lblasm, opcode, oprnd, asmcmt);
|
|
lblasm[0] = 0;
|
|
}
|
|
|
|
/* output a single comment line */
|
|
void cmtlin(void) {
|
|
DEBUG("Writing Comment Line: %s\n", cmtasm)
|
|
fprintf(outfil, "; %s\n", cmtasm);
|
|
setcmt("");
|
|
}
|