Konamiman / Nextor

A disk operating system for MSX computers, forked from MSX-DOS 2.31
Other
183 stars 33 forks source link

M80 include not working #39

Closed Emily82 closed 4 years ago

Emily82 commented 4 years ago

Hi guys i wanted to report a problem of M80 assembler with Nextor.

If i use INCLUDE directive in source code, the assembler reports error (V) not finding the file. While using legacy MSXDOS 2 all works without problems.

I tested all with Nextor 2.1.0 Beta 2 (openmsx) and M80 version 2.0

Konamiman commented 4 years ago

Hi, sorry but I'm unable to reproduce this issue. Could you please show me the code you're trying to assemble, and more information about your environment? (at least Nextor kernel and NEXTOR.SYS versions, and what's your storage hardware). Thank you!

Emily82 commented 4 years ago

The code its a simple "Hello World" and it works if i DONT use include keyword. Just include some other asm file with dummy routines and M80 will say that the file does not exist.

Im testing all using openmsx with its sunrise IDE emulation. I just configured the xml sunrise to use Nextor kernel ROM for emulators.

Konamiman commented 4 years ago

I still can't reproduce it. Please post the verbatim contents of the files you are using for the "Hello world" example and the exact command line you are giving to M80 for the assembly process.

Emily82 commented 4 years ago

test.mac

org 0100h
public main
output: defb     'Hello World!', 13, 10, '$'

include sub.mac

main:
            ld c, 09h
            ld de, output
            call 0005h
            ret
end

sub.mac

sub:
           ld a, 45
           ret

M80 command line m80 =test

M80 output

V                 INCLUDE SUB.MAC
V                 INCLUDE SUB.MAC

2 Fatal error(s)

Note: if it is important, im using version 2.44 of COMMAND2.COM

Konamiman commented 4 years ago

Still unable to reproduce it. All I get is "No fatal error(s)". Could I get an entire copy of the disk image file you are using in the emulator?

Emily82 commented 4 years ago

Here zipped hd image nextor_test.hd.zip To test it :

cd apps\src\asm\test
m80 =test
Konamiman commented 4 years ago

The problem doesn't seem to be related to Nextor. You have an INCLUDE environment item with value A:\msxc\include, looks like M80 is trying to search for SUB.MAC in this folder. If you remove the environment item or if you copy SUB.MAC to that folder everything works as expected.

Emily82 commented 4 years ago

Oh yes, sorry! I didnt know m80 used INCLUDE environment variable. I set it just for msx-c compiler. I tested it and it works now.