Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Using ZX Basic to create ESXDOS dot commands
#1
Hello all,

I'm new to ZXBasic, but despite of that I've managed to properly build and application using it (<!-- m --><a class="postlink" href="https://github.com/Utodev/ZXCU">https://github.com/Utodev/ZXCU</a><!-- m -->). I've found ZXBasic and its extension a great help to build that application, so first of all, thank you for building this tool.

The application is a menu driven setup application for Zx-Uno spectrum clone, built for latest core avaliable so far. While providing this application as .tap file may be OK, I wanted to try to compile it so it is a ESXDOS dot command, that may be invoked just by .zxuc.

I have built small ESXDOS dot commands before (just proofs of concept), made in assembler, and all that I know, considering they are undocummented, is:

- They are raw machine code binary files, that is, if first instruction is RET the dot command does nothing but returning to prompt. There is no header.
- They start at 0x4000 (ORG 8192)
- They apparently have 8K maximum size (largest one included with ESXDOS, .snaload, takes almost thos 8K)

I have compiled my code using -S 8192 option, but when y run .zxuc ZXUno freezes. I have also tried to compile a very simple code, and do the same, and in that case it doesn't freeze, but it does nothing.

Code:
PRINT "Hello World"

Compiling that code into a .hello command just returns with OK, without printing "Hello World"

I have decompiled what ZXBasic compiles and first instructions are what is expected, but it's way too complicated to debug furthermore.

I have also tried to reduce heap size with -H parameter, but nothing changes.

Any idea what may be wrong?
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 2 Guest(s)