Help to compile C-BIOS

By sd_snatcher

Prophet (3642)

sd_snatcher's picture

09-05-2014, 01:44

I'm trying to compile C-BIOS, but the Makefile seems to be broken and I'm not fluent at all with it. Could anyone help?

This is the error shown:

$ make
make: *** No rule to make target `vdep/slot.asm', needed by `vdep/main.asm'.  Stop.

BTW, the compiler is SjASMPlus v1.07 RC8-svn

Login or register to post comments

By sd_snatcher

Prophet (3642)

sd_snatcher's picture

09-05-2014, 02:53

If I delete the invalid derived/dep/slot.dep file, the following error is shown:

$ make
Depending: src/slot.asm
sed: RE error: illegal byte sequence
make: *** No rule to make target `vdep/slot.asm', needed by `vdep/main.asm'.  Stop.

By sd_snatcher

Prophet (3642)

sd_snatcher's picture

09-05-2014, 03:15

Ok, I found the error. The following variables need to be added to the beginning of the Makefile:

LC_CTYPE=C
LANG=C

Now the challenge is to make the Makefile work with sjasmplus.

By sd_snatcher

Prophet (3642)

sd_snatcher's picture

09-05-2014, 03:48

Done. These lines have to be added to the Makefile in order to support sjasmplus:

1) In the "# Select your assembler" part:

Z80_ASSEMBLER?=sjasmplus

2) After the sjasm endif:

ifeq ($(Z80_ASSEMBLER),sjasmplus)
        @cd src && sjasmplus -i../derived/asm $(<:vdep/%=%) --raw=../$@ --lst=$(@:derived/bin/%.rom=../derived/lst/%.lst) --nologo
endif

I also had to fix src/systemvars to remove the incorrect colons after the labels as EQUs shouldn't have them.