[Coco] Assembler directives

Phill Harvey-Smith afra at ramoth.org.uk
Wed Mar 20 07:21:26 EDT 2019


Hi all,

I'm currently working on a version of the disassembled Dragon ROMS that 
can be assembled to produced any of the following :

Dragon 32 ROM,
Dragon 64 ROM used in map 0
Dragon 64 ROM copied to RAM at $c000 and used in map 1
Dragon 200e ROM, this is the Spanish Eurohard's modified Dragon 64

I'm currently using Boisy's mamou** to build this, which works and 
produces binary identical ROMS.

**Though I'm not averse to using something else e.g. lwasm if there are 
advantages to doing so....just last time I tried lwasm it's assembly 
times seemed much longer.....

However there are multiple conditional parts assembled with nested ifeq 
/ ifne etc for example :

	ifne	dragon64
	ifeq	dragon200e
	FDB	$3634				; '64'
	else
	FDB     $0000
	endc
	else
         FDB     $0000
	endc

Is there a more succinct way of expressing this so that multiple 
conditions can be combined.

e.g. something like C's

#if defined(dragon64) & !defined(dragon200e)
	FDB	$3634				; '64'
#else
	FDB     $0000
#endif

Cheers.

Phill.

-- 
Phill Harvey-Smith, Programmer, Hardware hacker, and general eccentric !

"You can twist perceptions, but reality won't budge" -- Rush.


More information about the Coco mailing list