view lwasm/lwasm.h @ 324:be63116281b0

Created lwlib folder and added first bits to it
author lost
date Tue, 09 Feb 2010 05:59:56 +0000
parents 473ed9b353eb
children 619fd6ad4ab9
line wrap: on
line source

/*
lwasm.h

Copyright © 2010 William Astle

This file is part of LWTOOLS.

LWTOOLS is free software: you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version.

This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more details.

You should have received a copy of the GNU General Public License along with
this program. If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef ___lwasm_h_seen___
#define ___lwasm_h_seen___

#include <lw_stringlist.h>

enum lwasm_output_e
{
	OUTPUT_DECB = 0,	// DECB multirecord format
	OUTPUT_RAW,			// raw sequence of bytes
	OUTPUT_OBJ,			// proprietary object file format
	OUTPUT_RAWREL,		// raw bytes where ORG causes a SEEK in the file
	OUTPUT_OS9			// os9 module target
};

enum lwasm_target_e
{
	TARGET_6309 = 0,	// target 6309 CPU
	TARGET_6809			// target 6809 CPU (no 6309 ops)
};

typedef struct
{
	int output_format;					// output format
	int target;							// assembly target
	int debug_level;					// level of debugging requested
	
	lw_stringlist_t input_files;		// files to assemble
} asmstate_t;

#endif /* ___lwasm_h_seen___ */